Почему необходимо назначить хотя бы один столбец в таблице (в MySQL) в качестве PRIMARY KEY для таблицы, чтобы принимать операторы UPDATE и INSERT через JDBC? - PullRequest
0 голосов
/ 18 декабря 2009

Также; я могу добавить отрицательный INT внутри столбца PRIMARY KEY внутри таблицы через JDBC?

Ответы [ 2 ]

1 голос
/ 18 декабря 2009

Не должно быть причин, по которым вы не можете иметь отрицательное число в поле первичного ключа, если только вы не используете целое число без знака в качестве его типа данных.

Если у вас не определен первичный ключ (или уникальный индекс в этом отношении), сервер базы данных не может знать, что строки уникальны. Способность отличать одну строку от другой является довольно фундаментальной, когда дело доходит до баз данных, и я думаю, что, возможно, разработчики MySQL навязывают это вам - я не знаю, так как я не очень много использую MySQL. .. Честно говоря, с этой проблемой я никогда не сталкивался, потому что почти каждый стол, который я когда-либо создавал, имеет PK!

0 голосов
/ 18 декабря 2009

Почему необходимо назначить по крайней мере один столбец в таблице (в MySQL) как PRIMARY KEY для таблицы, чтобы принимать операторы UPDATE и INSERT через JDBC?

Это не ограничение JDBC. Это ограничение базы данных. Проконсультируйтесь с конкретными документами DB для ответов.

Кроме того, я могу добавить отрицательный INT внутри столбца PRIMARY KEY внутри таблицы через JDBC?

Это не ограничение JDBC. Это ограничение базы данных. Проконсультируйтесь с конкретными документами DB для ответов.

Чтобы прояснить ситуацию: JDBC - это просто простой инструмент , который дает вам возможность выполнять язык SQL с использованием языка Java. Если вы получаете исключения из пакета java.sql, проблема, скорее, заключается в неправильном синтаксисе SQL, ограничении в рассматриваемой базе данных или в редких случаях ошибке в драйвере JDBC, предоставляемом БД, но это, безусловно, не так. t вызвано API JDBC в целом, как вы, кажется, думаете.

...