首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

新人来问,字符串里头是SQL语句,在字符串前加@时表示?

2013-03-13 
新人来问,字符串里面是SQL语句,在字符串前加@时表示????例如:string FindListSql @ SELECT * FROM S_SY

新人来问,字符串里面是SQL语句,在字符串前加@时表示????
例如:
string FindListSql = @" SELECT * FROM S_SYS_UNIVERSITY"

string InsertSql = @"INSERT INTO S_SYS_UNIVERSITY(
                ID
                , PARENTID
                , NAME
                , ADDRESS
                , WEBSITEURL
                , FAX
                , TEL
                , EMAIL
                , REMARK
                , ENABLED
                , ORDERNUMBER
                , ISDELETED
                , CREATEUSER
                , CREATEDATE
                , CREATETIME
                , MODIFYUSER
                , MODIFYDATE
                , MODIFYTIME
            ) VALUES (
                : ID
                , :PARENTID
                , :NAME
                , :ADDRESS
                , :WEBSITEURL
                , :FAX
                , :TEL
                , :EMAIL
                , :REMARK
                , :ENABLED
                , :ORDERNUMBER
                , :ISDELETED
                , :CREATEUSER
                , :CREATEDATE
                , :CREATETIME


                , :MODIFYUSER
                , :MODIFYDATE
                , :MODIFYTIME
        )"
第二条如果没有 @会报错,而第一条不会,求大神解释
[解决办法]
你都没说清楚,什么数据库?不同数据库参数化的形式不同的,比如sql server是用@参数名、mysql是用?参数名。
[解决办法]
表示不对字符串转义
http://msdn.microsoft.com/zh-cn/library/vstudio/ms228362.aspx
[解决办法]
@表示参数,SQLServer参数用@,Oracle用:
你上面的第二条语句是oracle的写法,如果你用的sqlserver数据库,需要把冒号改成@
并对这些参数赋值
[解决办法]
如果不加上@
那么
string s ="a
b";
出来的是“ab”,而不是“a\r\nb”,换行没有了。
[解决办法]
如果是写在一行@没意义


@是断行时要加的
[解决办法]
我来告诉你把,在c#中 在前面加上@ 表示后面的sql语句可以换行!换行程序默认还是一条sql语句;

如果不加上@ 那么你的sql语句只能卸载一行上
[解决办法]
告诉编译器,不需要转椅,直接一个个字符解析
[解决办法]
加@:忽略转义字符,可以换行

热点排行