登录 用户中心() [退出] 后台管理 注册
   
您的位置: 首页 >> 程序员学前班[不再更新,只读] >> 主题: [c#]mysql 与 sql server/mssql 的不同参数传递方式     [回主站]     [分站链接]
标题
[c#]mysql 与 sql server/mssql 的不同参数传递方式
clq
浏览(0) + 2010-11-15 10:59:18 发表 编辑

关键字:

http://www.cnblogs.com/zpino/archive/2009/04/06/1430105.html
clq
2010-11-15 11:00:30 发表 编辑

        public void AddPara(string name, string value)
        {
            //SqlParameter param = new SqlParameter("id", SqlDbType.Int);
            //MySqlParameter param = new MySqlParameter();

            // name 转换成 "?ConfigID" 的形式,以便与 sql server 等通用
            //MySqlParameter param = new MySqlParameter("?"+name, SqlDbType.VarChar);
            MySqlParameter param = new MySqlParameter("?" + name, MySqlDbType.VarChar);// MySqlDbType 与 SqlDbType 搞错了的话是不行的
            
            param.Value = value;

            //param.ParameterName = "?ConfigID";
            //param.Value = "aaa";

            //cmd.Parameters.Add(param);

            paras.Add(param);
        }
--------------------------------------------------
"

在.net中操作数据库的时候。

大家都喜欢用sqlparameter。

parameter是预编译的,可以加快速度,也可以防注入。

在使用mssql的时候用sqlparameter。

在使用mysql的时候使用mysqlparameters。

第一次使用mysql的时候,都经常犯一个错误

比如在使用mssql的时候,一条查询这么写

 


select name,id from user where id=@id

 

在使用mysql的时候,查询语句就必须这样

 


select name,id from user where id=?id

 

@变成了?

同样,在什么parameter的时候

mssql是这样

 


SqlParameter param = new SqlParameter("id", SqlDbType.Int);

 

 

mysql便是这样

 


MySqlParameter param = new MySqlParameter("?cid", MySqlDbType.Int32);

 

还有在指定参数类型的时候

MySqlDbType中是没有nchar的。。。

当然Access中也是不同的,不外乎就是符号的差异,其余差别不大。

以上是我的一点总结。个人经验,分享给大家。


"


总数:1 页次:1/1 首页 尾页  
总数:1 页次:1/1 首页 尾页  


所在合集/目录



发表评论:
文本/html模式切换 插入图片 文本/html模式切换


附件:



NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.

Copyright © 2005-2020 clq, All Rights Reserved
版权所有
桂ICP备15002303号-1