代码就像家里的各种物品,格式化就好比对家中物品的排放。家中的物品随便怎么放,物品都不会反对,房子也不会介意,但是物品的排放合理、规整,会让家里变得更具有美感。代码也是一样,代码写成什么样子,代码不会反对,计算机也不会介意(除非不能运行),但是毕竟还是会有人来欣赏、维护这些代码,这时候具有很好格式的代码就显得尤为重要了。
SQL关键字
所有的SQL关键字大写。
SELECT,UPDATE,DELETE,INSERT INTO,CRETAE DATABASE,ALTER DATABASE,CREATE TABLE,ALTER TABLE,DROP TABLE,CREATE INDEX,DROP INDEX,LIKE,IN,INSERT、LEFT、RIGHT、FULL JOIN,CONSTRANIT,UNIQN,CHECK,VIEW等等。
1: CREATE DATABASE myDemo;
2:
3: CREATE TABLE Orders
4: {
5: [OrdersID] int NOT NULL,
6: [OrdersNo] int NOT NULL,
7: [CreateDate] datetime NOT NULL DEFAULT GETDATE(),
8: [Decription] varchar(200),
9: [CustomersID] int NOT NULL
10: }
11:
12: ALTER TABLE Orders
13: ADD CONSTRAINT pk_OrdersID PRIMARY KEY ([OrdersID])
14:
15: ALTER TABLE Orders
16: ADD CONSTRAINT fk_Orders_Customers
17: FOREIGN KEY ([CustomersID])
18: REFERENCES Customers([Customers])
19:
20: SELECT Customers.CustomersName, Orders.OrdersID
21: FROM Customers
22: INNER JOIN Orders
23: ON Customers.CustomersID=Orders.CustomersID
24: ORDER BY Customers.CustomersName
代码缩进
为了提高代码美感和可读性,代码缩进是必不可少的。一般的缩进的标准是以四个空格为单位或TAB键为单位,
1: IF NOT EXISTS( SELECT [OrdersID] FROM [Orders]
2: WHERE [CustomersID] = @CustomersID AND
3: [OrdersNo] = @OrdersNo )
4: BEGIN
5: INSERT INTO [Orders]
6: (
7: [OrdersID],
8: [OrdersNo],
9: [CreateDate],
10: [Decription],
11: [CustomersID]
12: )
13: VALUES
14: (
15: NEWID(),
16: @OrdersNo,
17: GETDATE(),
18: '',
19: @CustomersID
20: )
21: SET @error = @@ERROR
22: IF (@error <> 0) GOTO ExitPoint
23: END
注释
代码逻辑更易懂,最好添加表要的注释,这样对于codereview和维护都是有大大滴好处。
“--”:单行注释
“/*……*/”:多行注释
1: -- 创建名字为myDemo的数据库
2: CREATE DATABASE myDemo;
3: /*
4: 创建数据库表
5: 表名为Orders
6: */
7: CREATE TABLE Orders
8: {
9: [OrdersID] int NOT NULL
10: }
括号
使用括号增加可读性
1: SELECT [OrdersID]
2: FROM [ORDERS]
3: WHERE
4: (
5: CustomersID = '12345678'
6: AND ([Description] LIKE '%computer%' OR [Description] LIKE '%phone%'
7: )
空格
SQL内算数运算符和逻辑运算符连接的两个元素须用空格分隔。逗号如果不是一行的结束,要在逗号后面加空格。
代码示例请参照上面的例子
应该还有很所关于格式化的规则,由于本人设计数据尚浅,接触的数据库也不是特别多,还希望大家帮忙补充