周一周一到。。一

  hi

星期一是谁设定的。。。、

1、JS

一言九鼎是DOM的内容,本来是打算即无看看,粘贴复制就算是了的,但是看后面还要上iQuery等情节,还是完美看吧,DOM这边总有点东西有点蛋疼。。。代码先不齐了,待完成这无异于章节的编程练习再说好了,吃饭去

——————17:19———————–

 2、MySQL

—约束—

–目的凡为保证数据的完整性和一致性

–分为表级约束与列级约束

–仅对有一样靶(一列),称为列级约束;若超过1列,就是表级

–五栽约束:DEFAULT,NOT NULL,PRIMARY KEY,UNIQUE KEY,FOREIGN KEY

—FOREIGN KEY 外键约束—

–实现一对一或者同等对多

–用该约束需要有准绳,比如父表和子表(默认存储引擎都为Inno
DB),外键列和参照列(具有相似的数据类型),索引的创(默认的主键或者好创办)等

–实现上述要求,可以创造数据表之后,输入SHOW CREATE TABLE
table_name;命令查看

–以外键,如下所示

mysql> CREATE TABLE province(
-> id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
-> pename VARCHAR(20) NOT NULL);
Query OK, 0 rows affected (0.04 sec)

mysql> SHOW CREATE TABLE province;
+———-+—————————————————————————————————————————————————————————–+
| Table | Create Table |
+———-+—————————————————————————————————————————————————————————–+
| province | CREATE TABLE `province` (
`id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`pename` varchar(20) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
+———-+—————————————————————————————————————————————————————————–+
1 row in set (0.00 sec)

mysql> CREATE TABLE users(
-> id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
-> username VARCHAR(10) NOT NULL,
-> pid BIGINT,
-> FOREIGN KEY(pid) REFERENCES province (id)
-> );
ERROR 1215 (HY000): Cannot add foreign key constraint
mysql> CREATE TABLE users(
-> id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
-> username VARCHAR(10) NOT NULL,
-> pid SMALLINT UNSIGNED,
-> FOREIGN KEY(pid) REFERENCES province (id)
-> );
Query OK, 0 rows affected (0.04 sec)

只顾,这里反映出1】INNODB的查实;2】数据类型的形似条件;3】FOREIGN
KEY的动办法

除此以外,区分好子表users,父表province,外键列pid,参照列id

—外键约束的参照操作—

–CASCADE,SET NULL,RESTRICT,NO ACTION

–代表主表做变通后,子表是否变动

–需要注意的凡,要想往子表中插入记录,必须先行往父表中插记录,不然你让子表去哪参考

mysql> INSERT province(pename) VALUES(‘A’);
Query OK, 1 row affected (0.01 sec)

mysql> INSERT province(pename) VALUES(‘B’);
Query OK, 1 row affected (0.01 sec)

mysql> INSERT province(pename) VALUES(‘C’);
Query OK, 1 row affected (0.01 sec)

mysql> INSERT users1(username,pid) VALUES(‘TOM’,2);
Query OK, 1 row affected (0.01 sec)

mysql> INSERT users1(username,pid) VALUES(‘JACK’,1);
Query OK, 1 row affected (0.01 sec)

mysql> SELECT * FROM users1;
+—-+———-+——+
| id | username | pid |
+—-+———-+——+
| 1 | TOM | 2 |
| 2 | JACK | 1 |
+—-+———-+——+
2 rows in set (0.00 sec)

mysql> DELETE FROM province WHERE id=3;
Query OK, 1 row affected (0.01 sec)

mysql> SELECT * FROM users1;
+—-+———-+——+
| id | username | pid |
+—-+———-+——+
| 1 | TOM | 2 |
| 2 | JACK | 1 |
+—-+———-+——+
2 rows in set (0.00 sec)

mysql> DELETE FROM province WHERE id=2;
Query OK, 1 row affected (0.01 sec)

mysql> SELECT * FROM users1;
+—-+———-+——+
| id | username | pid |
+—-+———-+——+
| 2 | JACK | 1 |
+—-+———-+——+
1 row in set (0.00 sec)

–CASCADE-父子并删除或更新

–SET NULL-父删除,则子为NULL;另外,子不可知装也NOT NULL

–RESTRICT-拒绝对父亲的删除和更新

–NO ACTION-类似上一个

–森状态,多采取逻辑的外键约束,不适用这种innodb的大体约束

—表级和列级

–列级,在排的扬言时要声明后定义,比如FOREIGN KEY

–表级,用的遗失,必须于列定义后宣称

—修改数据表—

–即列的增长/删除,约束之丰富/删除

–添加列

-ALTER TABLE tbl_name ADD [COLUMN] col_name column_definition
[FIRST|AFTER col_name]

mysql> ALTER TABLE users1 ADD password VARCHAR(32) NOT NULL AFTER
username;
Query OK, 0 rows affected (0.08 sec)
Records: 0 Duplicates: 0 Warnings: 0

-添加多列:ALTER TABLE tbl_name ADD [COLUMN](col_name
column_definition,…)位置无法再次摘

–删除列

-ADD变为DROP

 

网站地图xml地图