作者StupidGaGa (笨嘎嘎)
看板C_Sharp
标题Re: [问题] 询问这组SQL为什麽要分SELECT和WHERE两段
时间Fri Jul 19 02:41:05 2013
※ 引述《bernachom (Terry)》之铭言:
: 不好意思,请教一下
: 最近都在看很难看的SQL语法....有些搞的不是很清楚
: 有个例子是,他分成两段写,一段是SELECT,一段是WHERE,
: 不太懂的是为什麽要这样子做呢??
: ASq1.AppendFormat("SELECT AAA_003 FROM {0}..AAA_003_W ", mCompany);
: ASq1.AppendFormat("WHERE AAA_002='{0}'", SHEETNO);
: TQB1 = dbCommand.Query(ASq1.ToString());
: 问题1:
: 就是...跟我在书上常常看到的不太一样,不能像书上一样这样子写吗?
: 例如 : string strSQL = @" Select * From TEST Where isActive=1 Order by s1";
: 问题2: ASq1.AppendFormat("SELECT AAA_003 FROM {0}..AAA_003_W ", mCompany);
: ^^^^
: 上面那个{0}右边有两个小点,是代表什麽意思呢??
: 谢谢帮忙了
SELECT * FROM db_name.table_name WHERE 条件
有时候书归书,实务上的写法跟个人经验有关,
不过书本这样写都会有它的理由在。
下面是我常用的写法,若有写错或不妥的地方,
希望前辈们可以指导一下
1. 为何要分SELECT与WHERE?
增加程式的弹性度
若条件常常会变动,WHERE 後面的条件最好是用"可以加在後面"的写法
SELECT的项目常常变动,也跟上面一样。
2. FROM db_name.table_name 为主
有时候可能同一个主机会有多个资料库,
要从多个资料库抓资料的机会蛮常遇到,
所以完整的使用资料库名称跟资料表名称是很有弹性的写法
3. 请多使用Parameters处理SQL语句
因为有安全性的考量
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.33.20.138
1F:→ bernachom:谢谢您,学到了 :) 07/19 07:10