- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 MySQL 新手。我尝试使用 MySQL Workbench 在新模式中创建一些表。我尝试“将模型与数据库同步”,但完成时出现错误。由于某种原因,MySQL Workbench 自动生成的 SQL 包括 CREATE TABLE IF NOT EXISTS mydb
.timestamps
..... 这似乎是问题所在。我能找到的最相关的东西是在 Workbench 的模式 GUI 编辑器中,它的右侧有一个名为“建模操作”的 Pane ,其中有一个名为“时间戳”的默认模板。我没有在我的简单测试项目中使用它。
我使用的是 MySQL 5.7.16 Win64。MySQL 工作台:6.3.7(内部版本 1199CE)
我确实意识到这与将空值放入非空字段有关,但是,如果该表/字段不属于我的表的一部分,那么首先如何创建该表/字段?
有人可以引导我走向正确的方向吗?我是 Access 的新手,这个系统非常不同。我无法使架构设计与 MySQL 同步。
*****************************************************************************
* MySQL Workbench auto-generated SQL - it is being made during Synchronize...
*****************************************************************************
-- MySQL Workbench Synchronization
-- Generated: 2016-11-08 06:30
-- Model: New Model
-- Version: 1.0
-- Project: Name of the project
-- Author: Turtle
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
CREATE TABLE IF NOT EXISTS `mydb`.`timestamps` (
`create_time` NULL DEFAULT CURRENT_TIMESTAMP,
`update_time` NULL)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8;
CREATE TABLE IF NOT EXISTS `mydb`.`tblWorkLog` (
`UserName` VARCHAR(50) NOT NULL,
`tblUsers_UserName` VARCHAR(50) NOT NULL,
PRIMARY KEY (`UserName`),
INDEX `fk_tblWorkLog_tblUsers_idx` (`tblUsers_UserName` ASC),
CONSTRAINT `fk_tblWorkLog_tblUsers`
FOREIGN KEY (`tblUsers_UserName`)
REFERENCES `mydb`.`tblUsers` (`UserName`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8;
CREATE TABLE IF NOT EXISTS `mydb`.`tblUsers` (
`UserName` VARCHAR(50) NOT NULL,
`fName` VARCHAR(50) NULL DEFAULT NULL,
`mName` VARCHAR(50) NULL DEFAULT NULL,
`lName` VARCHAR(50) NULL DEFAULT NULL,
`tblUserscol` VARCHAR(45) NULL DEFAULT NULL,
`email` VARCHAR(255) NULL DEFAULT NULL,
`tblWorkLog_UserName` INT(11) NOT NULL,
PRIMARY KEY (`UserName`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8;
CREATE TABLE IF NOT EXISTS `mydb`.`tblJobCodes` (
`JobCode` VARCHAR(50) NOT NULL,
`ShortName` VARCHAR(100) NULL DEFAULT NULL,
`LongName` VARCHAR(255) NULL DEFAULT NULL,
`Description` VARCHAR(4000) NULL DEFAULT NULL,
PRIMARY KEY (`JobCode`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8;
CREATE TABLE IF NOT EXISTS `mydb`.`tblRoles` (
`RoleID` VARCHAR(25) NOT NULL,
`Description` VARCHAR(255) NULL DEFAULT NULL,
PRIMARY KEY (`RoleID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
--
*****************************************************************************
* Error message from MySQL Workbench
*****************************************************************************
Executing SQL script in server
ERROR: Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NULL DEFAULT CURRENT_TIMESTAMP,
`update_time` NULL)
ENGINE = InnoDB
DEFAULT C' at line 2
SQL Code:
CREATE TABLE IF NOT EXISTS `mydb`.`timestamps` (
`create_time` NULL DEFAULT CURRENT_TIMESTAMP,
`update_time` NULL)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
SQL script execution finished: statements: 3 succeeded, 1 failed
Fetching back view definitions in final form.
Nothing to fetch
最佳答案
尝试每次创建一张表。
但我相信问题是您将 NULL
与 default
一起使用
检查这个 examples
应该是:
CREATE TABLE IF NOT EXISTS `mydb`.`timestamps` (
`create_time` DEFAULT CURRENT_TIMESTAMP,
`update_time`)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8;
关于MySQL工作台同步: error in CREATE TABLE IF NOT EXISTS `mydb` .`timestamps` (,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40488113/
我在 SQL 查询中使用了一个简单的 IF NOT EXISTS/WHERE NOT EXISTS 语句(我都尝试过),但我总是收到 mysql 错误,不知道为什么。尝试使用不同的引号,检查我的 My
我有 2 个表:tbl1 和 tbl2。我想从 tbl1 返回一行,其中包含以下列:col1、col2、col3、can_be_deleted 、有重要项目。这个想法是,can_be_deleted
如果您是 "t1".persona_1_id = 2,则预期结果应返回 persona_id = 4。 like --- id persona_1_id persona_2_id liked 1 2
我遇到了这个用于执行幂等插入的 github SQL 代码示例。完全按照我想要的方式工作。我不想使用 EXISTS,因为我觉得它有点困惑。可以使用联接对相同的操作进行编码吗? 下面是我在 github
public bool CheckTblExist(string TblName) { try { string cmTxt = "s
表1 Id Name DemoID 1 a 33 2 b 44 3 c 33 4 d 33 5 e 44 表2 Id DemoID IsT
我对 SQL 非常陌生。我想知道当我使用“IF EXISTS”或“IF NOT EXISTS”时会发生什么。例如:以下两个语句有什么区别: 语句 1:(存在) IF EXISTS( SELECT OR
我正在更新 exist-db 集合中的 XML 文件,我必须检查是否存在 id 以决定是否必须在我的文档中替换或插入某些内容。 我注意到随着文件的增长,查询执行时间显着恶化,我决定为我的文件添加一个索
我有一个正在尝试更新的数据库,但我不明白为什么会收到有关不存在的列的奇怪错误。当我使用“heroku pg:psql”访问数据库时,我完全可以看到该列。我找到了couple其他questions遇到类
我有一个这样的查询 SELECT ... FROM ... WHERE (SELECT EXISTS (SELECT...)) which did not return anything th
我有一个可以对数据库执行插入和更新的程序,我从 API 获取数据。这是我得到的示例数据: $uname = $get['userName']; $oname = $get['offerNa
我的批处理文件中有这个脚本 -- if not exist "%JAVA_HOME%" ( echo JAVA_HOME '%JAVA_HOME%' path doesn't exist) -
有没有办法让 Directory.Exists/File.Existssince 区分大小写 Directory.Exists(folderPath) 和 Directory.Exists(folde
考虑使用这两个表和以下查询: SELECT Product. * FROM Product WHERE EXISTS ( SELECT * FROM Codes
我正在使用 Subclipse 1.6.18 使用 Eclipse 3.72 (Indigo) 来处理 SVN 1.6 存储库。这一切都在 Ubuntu 下运行。 我有一个项目,在我更新我的 Ecli
我正在尝试使用 Terraform 配置 Azure 存储帐户和文件共享: resource "random_pet" "prefix" {} provider "azurerm" { versi
我有兴趣为需要使用 NOT EXISTS 的应用程序编写查询。子句来检查一行是否存在。 我正在使用 Sybase,但我想知道一般 SQL 中是否有一个示例,您可以在其中编写具有 NOT EXISTS
我正在尝试使用 Terraform 配置 Azure 存储帐户和文件共享: resource "random_pet" "prefix" {} provider "azurerm" { versi
下面是代码示例: CREATE TABLE #titles( title_id varchar(20), title varchar(80)
我曾经这样编写 EXISTS 检查: IF EXISTS (SELECT * FROM TABLE WHERE Columns=@Filters) BEGIN UPDATE TABLE SET
我是一名优秀的程序员,十分优秀!