我试图通过MySQL控制台将XML文件导出到数据库MySQL。
我使用以下命令:
\.C:/..../dbmysql.sql
LOAD XML LOCAL INFILE 'C:..../docente.xml' INTO TABLE DOCENTE;
在此之后,它给了我一个警告:
警告:1263\列设置为默认值;NULL提供给非空列
我怎么才能解决这个问题?
我想限制列id的输入值,其中的值在2到5之间,只有那些值才允许插入id列,因此我使用了check约束,但它不适用于all.In --我插入了三行,其中第2行和第3行不满足检查条件,但它们仍然被插入。
如何限制这些值?我正在使用mysql 5.6和InnoDB数据库引擎。
start transaction;
drop table if exists company ;
create table company(
id int check(id between 2 and 5),
name varchar(20));
insert into company(id,name)
我有一个有两个可选列的表。在表中插入一行时,这两列中的一列不应为空。
我为MySQL找到了这个解决方案:
CREATE TABLE foo (
FieldA INT,
FieldB INT
);
DELIMITER //
CREATE TRIGGER InsertFieldABNotNull BEFORE INSERT ON foo
FOR EACH ROW BEGIN
IF (NEW.FieldA IS NULL AND NEW.FieldB IS NULL) THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TE
我有一个php脚本,可以将csv文件上传到mysql数据库中。
数据库有几个列。在这些列中有一个“电子邮件”字段。我编写了一些mysql,它将删除电子邮件列中包含重复值的行。下面是mysql:
$sql = "CREATE TABLE new_table as SELECT * FROM auto WHERE 1 GROUP BY email";
mysql_query($sql, $conn);
$query = mysql_query("SELECT COUNT(*) FROM new_table");
list($number) = mysql_fe
我有一个简单的MYSQL表,其中包含以下列:
first | second
first和second是整数。表的主键是
PRIMARY KEY (`first`,`second`)
因此,这只允许以下值的唯一组合:
first | second
1 | 2
2 | 1
但是这个键也接受两列相同的值。例如:
first | second
1 | 1
有没有办法使用MYSQL强制这两个值不同。在插入到数据库之前,我可以用PHP进行检查,但是我想知道在MYSQL中是否有实现这一点的方法?
没有明显的理由(对我来说)我不能再对MySQL中的表进行更新了。版本是:
mysql Ver 15.1 Distrib 10.0.29-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
我所做的是:将一个新表添加到现有的数据库中。这张桌子是这样的:
CREATE TABLE `drawdata` (
`year` int(11) NOT NULL,
`left1` varchar(40) NOT NULL,
`left2` varchar(40) NOT NULL,
...
...
`left31` v
我很难设计mysql数据库。如果其他列中有值,则需要将列设置为NULL。例如,我有一个表学生:
CREATE TABLE Student(
studentID INT NOT NULL,
name VARCHAR(50),
surname VARCHAR(50),
age INT,
address VARCHAR(50),
school VARCHAR(50),
CONSTRAINT CHK_age(age>18)
)
如果列名中有值,则需要将列姓设置为NULL。换句话说,如果名称为NULL,则姓氏也可以为NULL。但是,如果列名有
我有一个有多个表的web应用程序。这些表及其列中的值存储在mysql表中,每个mysql表代表应用程序中的一个表。假设下面是我在mysql数据库中拥有的内容:
table1 with column1_1, column1_2, column1_3
table2 with column2_1, column2_2
table3 with column3_1, column3_2, column3_3, column3_4
我有一个新的要求,我应该能够允许用户对任何表格的任何列进行评论。为此,我将创建一个名为'comments'的mysql表,其中包含以下字段:
id
table_
这是我的PL-SQL语句。
ALTER TABLE regions MODIFY (region_name VARCHAR(40) DEFAULT 'Euro') CONSTRAINT region_nn NOT NULL;
列'region_name‘有空值,我想用’欧罗‘代替。我在这里得到一个错误,我想知道我是否语法错误,或者在添加NULL约束时不可能放置一个默认值,并且我必须将它作为两个单独的SQL语句来执行
谢谢你的帮助
为了获得类似于mysql ENUM类型的列,我编写了一个sql查询,如下所示
ALTER TABLE [DbName].[dbo].[MediaContent]
ADD MediaType nvarchar(50)
check(MediaType in ('audio','video','song','other'))
这就像所希望的那样工作(为了测试):但是现在我想删除这个专栏,但没有成功。似乎没有办法直接删除对其具有约束的列。我该如何解决这个问题?我想删除此列并创建另一个列。
以下是我在删除时收到的错误消息
The ob