2011-11-24 10 views
5

Come posso memorizzare una stringa in una colonna varbinary (max)?Come posso memorizzare una stringa in una colonna varbinary (max) utilizzando C#

Sono problemi havig nel processo di conversione sto facendo questo:

cmd.CommandText = "Insert into " + bdcombo.Text + ".dbo.nomes (id, nome) values (@id, @nome)"; 
    cmd.CommandType = CommandType.Text; 
    cmd.Connection = sqlcon; 

    cmd.Parameters.Add("@nome", SqlDbType.VarBinary, 20).Value = Convert.ToSByte(textBox1.Text); 
+4

Perché stai usando 'varbinary' per memorizzare le stringhe? – Oded

+0

perché vuoi memorizzare una stringa in una colonna varbinary ?? Non riesci a memorizzarlo in uno –

+0

varchar quale problema hai di fronte a un errore? eccezione? –

risposta

11

Se si desidera memorizzare una stringa, usare [n] varchar (max).

Se must uso varbinary (max), quindi per ottenere i byte è necessario utilizzare una codifica, ad esempio:

byte[] theBytes = Encoding.UTF8.GetBytes(theString); 

e versioni successive:

string theString = Encoding.UTF8.GetString(theBytes); 

(quando lettura)

Problemi correlati