Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- create table test_varbinary_table(
- id int not null IDENTITY PRIMARY KEY ,
- name varchar(256) not null,
- rows int not null,
- cols int not null,
- vb_data varbinary(max) null
- )
- CREATE PROCEDURE insertData
- @name varchar(256),
- @rows int,
- @cols int,
- @data varbinary(max)
- AS
- BEGIN
- -- SET NOCOUNT ON added to prevent extra result sets from
- -- interfering with SELECT statements.
- SET NOCOUNT ON;
- -- Insert statements for procedure here
- INSERT INTO test_varbinary_table
- (name, rows, cols, vb_data) VALUES (@name, @rows, @cols, @data);
- END
- double[,] dblArySampleData = new double[2,3] { {7.0, 3.0, 1.3 }, {8.333, 4.1211, 8.999 } };
- var result = new byte[6 * sizeof(double)];
- Buffer.BlockCopy(dblArySampleData, 0, result, 0, result.Length);
- try
- {
- using (SqlConnection conn = new SqlConnection(connString))
- {
- conn.Open();
- using (SqlCommand cmd = new SqlCommand("dbo.insertData", conn))
- {
- cmd.CommandType = CommandType.StoredProcedure;
- cmd.Parameters.AddWithValue("@name", "foo");
- cmd.Parameters.AddWithValue("@rows", 2);
- cmd.Parameters.AddWithValue("@cols", 3);
- cmd.Parameters.AddWithValue("@data", result);
- cmd.ExecuteNonQuery();
- }
- conn.Close();
- }
- textBox1.Text = "No Failure!";
- } catch (Exception ex)
- {
- textBox1.Text = "Error: " + ex.Message;
- }
- try
- {
- using (SqlConnection conn = new SqlConnection(connString))
- {
- conn.Open();
- SqlDataReader rdrMatrix = null;
- DataTable tblMatrix = new DataTable();
- using (SqlCommand cmd = new SqlCommand("dbo.GetData", conn))
- {
- cmd.CommandType = CommandType.StoredProcedure;
- rdrMatrix = cmd.ExecuteReader(CommandBehavior.CloseConnection);
- tblMatrix.Load(rdrMatrix);
- String strResult = "";
- foreach (DataRow dr in tblMatrix.Rows)
- {
- byte[] retData = new byte[6 * sizeof(double)];
- String retName;
- retName = dr["name"].ToString();
- strResult += retName + "rn";
- retData = (byte[])dr["vb_data"]; // potential problem?
- Buffer.BlockCopy(retData, 0, dary, 0, dary.Length); // potential problem?
- for (int ri = 0; ri< 2; ri++)
- {
- strResult += " ";
- for (int ci = 0; ci<3; ci++)
- {
- strResult += " " + dary[ri,ci] ;
- }
- strResult += "rn";
- }
- strResult += "rn" ;
- }
- textBox1.Text = strResult;
- }
- conn.Close();
- }
- //textBox1.Text = "No Failure!";
- }
- foo
- 0 0 0
- 0 0 0
- bar
- 0 0 0
- 0 0 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement