小编Mar*_*lff的帖子

你如何在MySQL中使用"WITH"子句?

我正在将我的所有SQL Server查询转换为MySQL,并且我的查询WITH都失败了.这是一个例子:

WITH t1 AS
(
     SELECT article.*, userinfo.*, category.*
     FROM question
     INNER JOIN userinfo ON userinfo.user_userid = article.article_ownerid
     INNER JOIN category ON article.article_categoryid = category.catid
     WHERE article.article_isdeleted = 0
)
SELECT t1.*
FROM t1
ORDER BY t1.article_date DESC
LIMIT 1, 3
Run Code Online (Sandbox Code Playgroud)

mysql common-table-expression with-clause subquery-factoring mysql-8.0

100
推荐指数
5
解决办法
19万
查看次数

MySQl错误#1064

我一直收到这个错误:

MySQL说:#1064 - 你的SQL语法有错误; 检查与MySQL服务器版本对应的手册,以便在第15行的INSERT INTO books.book(isbn10,isbn13,title,edition,author_f_name,author_m_na')附近使用正确的语法

使用此查询:

USE books;

DROP TABLE IF EXISTS book;


    CREATE TABLE `books`.`book`(
    `book_id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
    `isbn10` VARCHAR(15) NOT NULL,
    `isbn13` VARCHAR(15) NOT NULL,
    `title` VARCHAR(50) NOT NULL,
    `edition` VARCHAR(50) NOT NULL,
    `author_f_name` VARCHAR(50) NOT NULL,
    `author_m_name` VARCHAR(50) NOT NULL,
    `author_l_name` VARCHAR(50) NOT NULL,
    `cond` ENUM('as new','very good','good','fair','poor') NOT NULL,
    `price` DECIMAL(8,2) NOT NULL,
    `genre` VARCHAR(50) NOT NULL,
    `quantity` INT NOT NULL)

    INSERT INTO books.book(isbn10,isbn13,title,edition,author_f_name,author_m_name,author_l_name,cond,price,genre,quantity)** 
    VALUES ('0136061699','978-0136061694','Software Engineering: Theory and …
Run Code Online (Sandbox Code Playgroud)

mysql mysql-error-1064

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

MYSQL和innoDB动态地改变表的AUTO_INCREMENT

我有一个问题,例如在我的系统中我有下一个表:

CREATE TABLE `sales` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `amount` FLOAT NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB;
-- is more complex table
Run Code Online (Sandbox Code Playgroud)

内容:

+-----+-------+
| id  | amount|
+-----+-------+
|2023  |  100 |
|2024  |  223 |
|2025  |  203 |
|...          |
|2505  |  324 |
+-----+-------+
Run Code Online (Sandbox Code Playgroud)

我不知道当前的id(每天都有销售).我正在尝试规范化表格.

UPDATE  sales SET id=id - 2022;
Run Code Online (Sandbox Code Playgroud)

结果:

+-----+-------+
| id  | amount|
+-----+-------+
|   1  |  100 |
|   2  |  223 |
|   3  |  203 |
|... …
Run Code Online (Sandbox Code Playgroud)

mysql innodb auto-increment mysql-5.7

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

MySQL:"你的SQL语法错误...在'desc附近'VALUES('Idea','Description')'"

我试图让MySQL为我的表单提交工作.我尝试插入表格时遇到问题.
当我将信息放入我的表单并单击提交时(在此示例中,信息在一个字段中为"Idea",在另一个字段中为"Description")我得到此响应:

"您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以便在'desc附近使用正确的语法'VALUES('Idea','Description')'在第1行"

我正在从Web服务器运行.php文件来执行此脚本.

这是我目前的代码:

<?php

mysql_connect("localhost","root","") or die(mysql_error());
mysql_select_db("date_ideas") or die(mysql_error());
$title=$_POST['title'];
$title=mysql_real_escape_string($title);
$desc=$_POST['desc'];
$desc=mysql_real_escape_string($desc);
$submit="INSERT INTO ideas (title, desc) VALUES ('$title','$desc');";

mysql_query($submit) or die(mysql_error());

echo ("Idea submitted.  Click <a href='Webroot/submit.php'>here</a> to go back and post another idea.");
?>
Run Code Online (Sandbox Code Playgroud)

如果你调用所使用的变量的回声它会成功传递信息,所以这不是问题.

php mysql mysql-error-1064

5
推荐指数
2
解决办法
6498
查看次数

MySQL查询给出错误1064 - 任何想法?

这个查询:

UPDATE jos_content SET fulltext='\r\n<br /> \" some other text' WHERE id=3
Run Code Online (Sandbox Code Playgroud)

得到:

ERROR 1064 (42000): 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 'fulltext='\r\n<br /> \" some other text' WHERE id=3' at line 1

任何人都知道为什么?谢谢你.

mysql mysql-error-1064

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

#1242 - 子查询返回超过1行 - mysql

我正在尝试创建一个select语句,从MySQL数据库中选择图像名称.该表名为 - pictures_archive.我也试图根据他们的类别选择这些图片.代码是:

SELECT pictures_archive_filename FROM pictures_archive 
WHERE pictures_archive_id = (SELECT pictures_archive_id 
FROM pictures_archive_category WHERE pictures_category_id = 9)
Run Code Online (Sandbox Code Playgroud)

它给了我一个"#1242 - Subquery返回超过1行"的错误.我可以看到原因,但无法弄明白该怎么做.

mysql mysql-error-1242

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

为什么我收到这个MySQL错误 - '你的SQL语法有错误......'?

我收到以下MySQL错误:

您的SQL语法有错误; 查看与您的MySQL服务器版本对应的手册,以便在'SET type ='movie',SET category ='New',SET music ='Pop',SET'在第1行附近使用正确的语法

继承人我的疑问:

UPDATE music_content
SET    title = 'Classic',
SET    type = 'movie',
SET    category = 'New',
SET    music = 'Pop',
SET    audience = 'Everyone'
WHERE  id = '6'
Run Code Online (Sandbox Code Playgroud)

不确定我做错了什么? - 存在所有列和表,并且所有数据都被转义(使用mysql_real_escape_string()).此外,我有一个有效/连接的MySQL连接.

MySQL版本:5.1.41.

mysql mysql-error-1064

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

PDO Mysql 语法错误 1064

我运行以下代码:

$conn = new PDO(....);
.... pdo attributes ...

$limitvalue = 0;
$limit = 10;
$sql = $conn->prepare("SELECT * FROM table1 LIMIT ?, ?");
$sql->bindParam(1, $limitvalue, PDO::PARAM_INT);
$sql->bindParam(2, $limit, PDO::PARAM_INT);
$sql->execute();
Run Code Online (Sandbox Code Playgroud)

我得到:

未捕获的异常 'PDOException' 带有消息 'SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 1 行的“NULL, 10”附近使用的正确语法

它只发生在这个特定的查询中。其他一切正常。

顺便说一句:我知道我为“代码中”值准备语句可能看起来很愚蠢。但这只是一个例子。事实上,这些值取决于页码,但在这里无关紧要 - 此查询也给出了相同的错误。


如果有人感兴趣,PHP 版本是:5.3.4RC2,而 MySQL 是:mysqlnd 5.0.7-dev - 091210 - $Revision: 304625 $

php mysql pdo mysql-error-1064

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

耙子中止,Gemfiles需要不同的耙子

我正在使用MySQL Server 5.7(64位),MySQL Connector C 6.1 6.1.2(32位),Ruby 1.9.3p392(2013-02-)在Windows 7(64位)上通过Lynda.com完成Ruby on Rails 3 Essential Training教程. 22)[i386-mingw32]和Rails 3.2.12.

在培训中,我在"数据库和迁移"部分尝试将我在MySQL中创建的数据库与我的Rails项目同步,但是我一直在遇到中止消息.

教师要求我的班级通过命令提示符打开我们的rails项目并执行Rake以使用以下代码构建"schema.rb":

这就是我现在运行"db:schema:dump"时所说的内容

C:\Sites\todo>rake db:schema:dump rake aborted!

You have already activated rake 10.1.1, but your Gemfile requires rake 10.0.3.

Using bundle exec may solve this.

C:/Sites/todo/config/boot.rb:6:in"`

C:/Sites/todo/config/application.rb:1:in"`

C:/Sites/todo/Rakefile:4:in"`

(See full trace by running task with --trace)

我该怎么做才能获得Gemfile需要的rake?

ruby mysql ruby-on-rails ruby-on-rails-3 mysql-5.7

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

#1064 - 您的SQL语法有错误; 检查与MySQL服务器版本对应的手册,以获得正确的语法

我想使用以下脚本创建一个表:

mysql_query("create table `".$mysql_table_prefix."query_log` (
    query varchar(255),
    time timestamp(14),
    elapsed float(2),
    results int, 
    key query_key(query)
)");
Run Code Online (Sandbox Code Playgroud)

它给了我这个错误:

#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 'mysql_query("create table `".$mysql_table_prefix."query_log` ( query varchar(25' at line 1
Run Code Online (Sandbox Code Playgroud)

编辑:我在phpMyAdmin中使用了sql选项卡

我能做什么?

php mysql mysql-error-1064

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