大家平时都用哪种方法写SQL的长语句呢?
解决方案 »
- 可以用Visual Studio 2010画图吗?
- 调用api需要考虑到的安全性问题
- formview 或 detailview中想实现后台记录哪些字段做了修改,怎么实现?
- C#高手求救,重分奖励100
- 100分!音频混音、回声消除、静音检测、杂音消除。人人有分!
- 随机产生32位数 然后写入数据库 结果产生的都是一样的!
- 查询小问题,送50分
- 批生成8位数字密码,尽量不要重复,请问改如何写算法?在线等!
- 查询后绑定分页的问题
- <asp:button id="btsubmit" runat="server" text="add" onclick="submit"/>出错
- bill都头痛的问题
- gridview折行问题
Rs("Infomation_Title") = Title
Rs("Infomation_TitleAddTime") = TitleAddTime
Rs("Infomation_TitleAuthor") = TitleAuthor
Rs("Infomation_TitleSource") = TitleSource
Rs.update asp中这个不是在写sql语句.如果你想这样的话..可以看一下sqldataadapter.update(datatable dt);或是你可以自己写一个sqlbuilder的类.来构造语句..
呵呵.
OracleConnection conn = new OracleConnection(connectionString);
OracleCommand cmd = new OracleCommand("INSERT INTO UsersInRoles " +
" (Username, Rolename, ApplicationName) " +
" Values(:Username, :Rolename, :ApplicationName)", conn); OracleParameter userParm = cmd.Parameters.Add("Username", OracleType.VarChar, 255);
OracleParameter roleParm = cmd.Parameters.Add("Rolename", OracleType.VarChar, 255);
cmd.Parameters.Add("ApplicationName", OracleType.VarChar, 255).Value = ApplicationName;你把oracle改成sql的,冒号改成@就可以了。
不好意思,这个确实不是SQL语句,是我描述错了我想描述的是在添加记录的过程中,比如说有15个字段要添加,如果写一行SQL语句就会很长,而且很难读懂,有没有像ASP中的这种类似的方法。可以清楚明了一点。一楼的朋友回答的是:用parameters。 可惜没有参考的代码五楼的朋友有参考代码,但是SQL语句还是会很长,不好读懂。
//如果用SqlParameter
SqlParameter[] parameters = {
new SqlParameter("@sortid", SqlDbType.Int,4),
new SqlParameter("@brandid", SqlDbType.Int,4),
new SqlParameter("@sub", SqlDbType.VarChar,200),
new SqlParameter("@contect", SqlDbType.Text),
new SqlParameter("@subname", SqlDbType.VarChar,50),
new SqlParameter("@subtime", SqlDbType.DateTime),
new SqlParameter("@Isback", SqlDbType.Int,4),};
parameters[0].Value = _sortid;
parameters[1].Value = _brandid;
parameters[2].Value = _sub;
parameters[3].Value = _contect;
parameters[4].Value = _subname;
parameters[5].Value = _subtime;
parameters[6].Value = _isback;
要 Data Access Application Block 中的
不要petshop中的
0.
// pass // String.Format 我的最爱 ^_^
1. string sql = String.Format("INSERT INTO MyTable(Field1, Field2, Field3) VALUES({0}, '{1}', {2})", value1.ToString(), value2, value3.ToString());// 使用 @ 折行
2. string sql = String.Format(@"
INSERT INTO MyTable(Field1, Field2, Field3)
VALUES({0}, '{1}', '{2}')",
value1, value2, value3);
// StringBuilder 效率为先
using System.Text;
3. StringBuilder sqlBuidler = new StringBuidler();
sqlBuilder.Append("INSERT INTO MyTable(Field1, Field2, Field3) ");
sqlBuilder.Append("VALUES({0}, '{1}', {2})",
value1.ToString(), value2, value3.ToString());
// SQLServer
1.
string sql = @"
INSERT INTO MyTable(Field1, Field2, Field3)
VALUES(@Field1, @Field2, @Field3)";
// ...
mySqlCommand.Paramters.AddWithValue("@Field1", value1);
mySqlCommand.Paramters.AddWithValue("@Field2", value2);
mySqlCommand.Paramters.AddWithValue("@Field3", value3);
INSERT INTO Mac_Employee(A, B, ......Z)
VALUES(@Field1, @Field2, @Field3.....); 另外你的ASP写法里面压根就不是在写Sql语句.....