PyCharmログインMySQLの
1.あなたのプロジェクトを作成すると、
データベースの右にあるボタンをクリックします。2.
編集MySQLのユーザー名とパスワードを入力し、ダイアログボックスで
[詳細に促さServerが返す無効としてタイムゾーン移動を 「タブセット「serverTimezone」プロペの:エラーを参照してください問題ソリューション
共通データベースのフィールド制約
制約タイプ | キーワード |
---|---|
主キーの増分 | 主キーAUTO_INCREMENT |
繰り返すことはできません | unqiue |
空にすることはできません | NOT NULL |
デフォルト値 | デフォルト |
コード:
create table user1(
id int primary key auto_increment,
username varchar(16) not null unique ,
password varchar(16) not null,
gender tinyint default 0,
account decimal(12,2) default 0,
vip boolean default false
);
データベースの追加、削除、変更、検索コマンド
挿入データ
構文:テーブルへの挿入[]の値(データ[1]、[2] ...データ...);
コード:
insert into user3 (username,password,createDatetime) values
('张伟','pass1','2019-07-11'),('王伟','pass2','2019-07-11'),
('王芳','pass3','2019-07-12'),('李伟','pass4','2019-07-11'),
('王秀英','pass5','2019-07-12'),('李秀英','pass6','2019-07-11'),
('李娜','pass7','2019-07-10'),('张秀英','pass8','2019-07-10'),
('刘伟','pass9','2019-07-12'),('张敏','pass10','2019-07-10');
修正データ
構文:更新テーブル[SET] [1] = [フィールドの値]、[2] = {フィールド値} ... []条件
コード:
update user1 set username='name2' where id=1;
データを削除
構文:
[条件テーブル名]から[削除]
コード:
delete from user1 where id=1;
他の
テーブルに新しいフィールド、新しいフィールドと指定制約の種類
ALTER TABLEテーブル名フィールド名] [追加] [タイプ] []バインド、
テーブル内のフィールドを変更し、指定したフィールドの名前が変更され、および修正、フィールドタイプ制約
ALTER TABLE [テーブル名]変更[元のフィールド名] [新フィールド名] [タイプ] [拘束];
テーブル内の削除フィールド
ALTER TABLE [テーブル名]ドロップ[フィールド名]、
テーブルに名前の変更
、リネームテーブル[元[新しいテーブル名にテーブル名]]
コード:
alter table user2 add tel tinyint unique;
alter table user2 change tel tel varchar(16) unique;
alter table user2 drop tel;
rename table user2 to user3;
質問
1.查看表内所有数据
select * from 【表名】; 注:*表示所有字段
例子:
select * from user3;
2.查看指定字段
select 【字段1】,【字段2】 from 【表名】;
例子:
select username, password from user3;
3.比较条件查询
select * from 【表名】 where 【条件】;
条件 | 命令 |
---|---|
相等 | = |
不相等 | != |
为空 | is null |
不为空 | is not null |
大于(大于等于) | >(>=) |
小于(小于等于) | <(<=) |
例子:
select * from user3 where username='王伟';
select * from user3 where username!='王伟';
select * from user3 where createDatetime is not null;
select * from user3 where id >=5;
4.模糊条件查询
select * from 【表名】 where 【字段】 like “表达式”;
条件 | 命令 |
---|---|
% | 匹配任意多的字符 |
_ | 匹配一个字符 |
代码:
select * from user where username like '%王%'
select * from user where username like '王_'
5.范围查询
select * from 【表名】 where 【字段】 in(【可能1】,【可能2】… …);
代码:
select * from user where username in ('王伟','李娜');
6.逻辑运算符
条件 | 命令 |
---|---|
and | 与 |
or | 或 |
代码:
select * from user3 where username='王伟' or username='李娜';
7.分组
格式:
select * from 【表名】 where 【条件】 group by 【字段1】,【字段2】… … ;
说明:
- 按照哪个字段分组,哪个字段就不会重复。
- group by 要写在where的后面
代码:
select count(*),createDatetime from user3 group by createDatetime;
格式:
select * from 【表名】 where 【条件】 group by 【字段1】,【字段2】… … having 【条件】;
说明:
where是对select * from的结果进行筛选
having是对group by的最后结果进行筛选
代码:
select count(*),createDatetime from user3 group by createDatetime having count(*) > 3;
8.ソート
形式:
フィールドによって、[テーブル名] [条件]グループからSELECT * [1]、[1]フィールドASCにより、[2]フィールド... ...持つ[条件]順| DESC、[2]フィールドASC | DESC ;
説明:
- ASCとDESC意味ASC:昇順(デフォルト)DESC:降順
- [2]フィールドの並べ替えに応じてソートする順序優先フィールドに[1]、もし[1]と同じフィールド、
コード:
select * from user3 order by createDatetime desc,id asc;
9.ページング(リミット)
フォーマット
フィールドによってSELECT * [テーブル名]から[条件]グループ[1]、[1]フィールドのASCによる[2]フィールド...有する[条件]順| DESC、フィールド[2] ASC | DESC制限開始インデックス[]、[]データの数;
コード:
select * from user3 limit 3,5;