小编Har*_*eja的帖子

如何将空值传递给外键字段?

我有2张桌子:

university:

university_id(p.k) | university_name
Run Code Online (Sandbox Code Playgroud)

并且user:

uid | name | university_id(f.k)
Run Code Online (Sandbox Code Playgroud)

如何在用户表中保留university_id NULL

我只写了1个查询,我的查询是:

INSERT INTO user (name, university_id) VALUES ($name, $university_id);
Run Code Online (Sandbox Code Playgroud)

这里$university_id可以从前端空.

university 桌子将由我设置为默认.

在前端,学生将根据university_id将要传递到user表格的大学名称进行选择,但如果学生没有选择任何大学名称,则应将空值传递给user表格中的university_id字段.

mysql sql database database-design

31
推荐指数
1
解决办法
5万
查看次数

如何编写程序将数据插入到phpmyadmin中的表中?

我创建了如下表:

student:
+----+------+-----------+--------+
|uid | name | user_name | branch |
+----+------+-----------+--------+
|    |      |           |        |
+----+------+-----------+--------+
Run Code Online (Sandbox Code Playgroud)

我想使用过程将数据插入到表中.

我写的程序是:

create procedure add(in_name varchar(50),in_user_name varchar(50),in_branch varchar(50))
begin
insert into student(name,user_name,branch)values(in_name,in_user_name,in_branch);
结束;

mysql database stored-procedures phpmyadmin

7
推荐指数
2
解决办法
9万
查看次数

如何为同一数据库中的所有表设置唯一主键

如何为数据库的所有表设置唯一的主键?
例如,我不想重复不同表的任何主键.

table A:
----------
id | name
----------
1  | aaa
3  | bbb
5  | ccc

table B:
-------------
id | surname
-------------
7  | ddd
2  | eee
9  | fff

table C:
-------------
id | nickname
-------------
4  | ggg
6  | hhh
8  | iii
Run Code Online (Sandbox Code Playgroud)

一切id都是primary keyauto_increment.所有数据输入dynamically.I现在用MYSQLPHPMYADMIN.

mysql sql database database-design

4
推荐指数
1
解决办法
1873
查看次数

如何创建触发器来进行字段连接

我有1个这样的表:

user
----------------------------------------
id | first_name | last_name | full_name
----------------------------------------
Run Code Online (Sandbox Code Playgroud)

我想编写一个触发器,它将first_name和last_name连接到full_name.

我试过下面的触发器:

delimiter |
create trigger fullname after insert on user
for each row
begin
update user set full_name=(select concat(first_name,last_name) from user where id=new.id)where id=new.id;
end;
|
Run Code Online (Sandbox Code Playgroud)

将数据插入用户表时显示此错误:

#1442 - Can't update table 'user' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.

mysql sql database sql-update

3
推荐指数
1
解决办法
1万
查看次数

如何合并2个表并按字母顺序获取输出

表格:

TEST1

id1 | name1
1   |  a
2   |  s
3   |  d
4   |  t
5   |  z
Run Code Online (Sandbox Code Playgroud)

TEST2

id2 | name2
1   |  c
2   |  b
3   |  e
4   |  k
5   |  x
Run Code Online (Sandbox Code Playgroud)

需要编写查询以按字母顺序生成输出

a
b
c
d
e
k
s
t
x
z
Run Code Online (Sandbox Code Playgroud)

这是可能只使用SQL查询,不使用代码.

mysql sql

1
推荐指数
1
解决办法
59
查看次数