Простое создание таблиц в SQL [duplicate]

В Java все находится в форме класса.

Если вы хотите использовать любой объект, тогда у вас есть две фазы:

  1. Объявить
  2. Инициализация

Пример:

  • Объявление: Object a;
  • Инициализация: a=new Object();

То же самое для концепции массива

  • Объявление: Item i[]=new Item[5];
  • Инициализация: i[0]=new Item();

Если вы не дают секцию инициализации, тогда возникает NullpointerException.

51
задан eggyal 7 May 2014 в 11:32
поделиться

6 ответов

96
ответ дан 2 revs, 2 users 99% 20 August 2018 в 11:48
поделиться

Вы также получаете эту ошибку, когда пытаетесь вставить JSON или другие данные со специальными символами без необходимых котировок, например:

UPDATE myTable SET myJSONfield = {};

изменить его на

UPDATE myTable SET myJSONfield = '{}';
0
ответ дан Andrew 20 August 2018 в 11:48
поделиться

Если вы получаете сообщение об ошибке с SQuirreL Client при выполнении SQL-запроса с точкой с запятой, например CREATE PROCEDURE, вам нужен плагин MySQL. Вы можете выбрать его при установке. Он не выбран по умолчанию.

0
ответ дан Horcrux7 20 August 2018 в 11:48
поделиться

Возможно, из-за того, что ваша строка или вставленные данные содержат одну цитату, вы можете попробовать функцию

mysql_real_escape_string() for mysql or mysqli_real_escape_string() for mysqli

, чтобы избежать строки при вставке данных (вставить запрос) в базу данных.

0
ответ дан Hussnain sheikh 20 August 2018 в 11:48
поделиться

В моем случае я пытался выполнить код процедуры в MySQL и из-за некоторой проблемы с сервером, на котором сервер не может определить, где закончить оператор, я получаю код ошибки 1064. Поэтому я завернул процедуру с помощью пользовательский DELIMITER, и он работал нормально.

Например, перед тем как это было:

DROP PROCEDURE IF EXISTS getStats;
CREATE PROCEDURE `getStats` (param_id INT, param_offset INT, param_startDate datetime, param_endDate datetime)
BEGIN
    /*Procedure Code Here*/
END;

После помещения DELIMITER это было так:

DROP PROCEDURE IF EXISTS getStats;
DELIMITER $$
CREATE PROCEDURE `getStats` (param_id INT, param_offset INT, param_startDate datetime, param_endDate datetime)
BEGIN
    /*Procedure Code Here*/
END;
$$
DELIMITER ;
0
ответ дан Umair Malhi 20 August 2018 в 11:48
поделиться

Различные причины для этого .. скажем, например. если мы объявляем любую переменную, то она должна быть перед любыми другими типами операторов. или нам нужно поставить блок BEGIN до этого.

DECLARE _RoomID INTEGER ;

    SET _dtTodayTmp=NOW();
    SET _dtToday=DATE_FORMAT(_dtTodayTmp,"%m/%d/%y");
    SET _tmNow=DATE_FORMAT(_dtTodayTmp,"%h:%i:%s");

    DECLARE tree_cursor1 CURSOR 
    FOR SELECT roomid FROM reservationDet rd WHERE rd.status=3 AND rd.compcode=pCompCode; 

дает ошибку, поэтому нам нужно сделать это

DECLARE _RoomID INTEGER ;
    SET _dtTodayTmp=NOW();
    SET _dtToday=DATE_FORMAT(_dtTodayTmp,"%m/%d/%y");
    SET _tmNow=DATE_FORMAT(_dtTodayTmp,"%h:%i:%s"); 

    **BEGIN**
        DECLARE tree_cursor1 CURSOR
        FOR SELECT roomid FROM reservationDet WHERE STATUS = 3 AND compcode = pCompCode ; 
0
ответ дан user5493732 20 August 2018 в 11:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: