Tôi cần phải làm một cái gì đó đơn giản - chèn một hàng vào MySQL (với PHP) nhưng không có giá trị. Bảng MySQL sẽ có các giá trị mặc định cần thiết, vì vậy tôi không cần chèn bất kỳ giá trị nào. Câu lệnh chèn sẽ trông như thế nào nếu không có các giá trị để chèn?Làm cách nào để chèn một hàng không có bất kỳ giá trị nào để tất cả các cột giả sử giá trị mặc định của chúng?
Trả lời
INSERT INTO my_table VALUES()
Trong SQL Server, nó giống như thế này.
insert into TableName default values
Bạn có thể sử dụng default values
:
insert YourTable default values
Cách đúng là để cung cấp một danh sách các giá trị rỗng và để cho các lĩnh vực có giá trị mặc định của họ ngầm:
INSERT INTO `table`() VALUES();
Ngoài bạn có thể sử dụng từ khóa DEFAULT
:
INSERT INTO `table` (`Col1`, `Col2`, ...) VALUES(DEFAULT, DEFAULT, ...);
Hoặc (giả sử bạn đang đem lại giá trị cho tất cả các cột) chỉ:
INSERT INTO `table` VALUES(DEFAULT, DEFAULT, ...);
Tất cả các thông tin cần thiết có thể được tìm thấy trong the documentation for INSERT
:
Nếu bạn không chỉ định danh sách tên cột cho INSERT ... VALUES hoặc INSERT ... SELECT, giá trị cho mỗi cột trong bảng phải là được cung cấp bởi danh sách VALUES hoặc câu lệnh SELECT. Nếu bạn không biết thứ tự của các cột trong bảng, hãy sử dụng DESCRIBE tbl_name để tìm hiểu.
[..]
Nếu bạn không chạy trong chế độ SQL nghiêm ngặt, bất kỳ cột nào không rõ ràng được đưa ra một giá trị được thiết lập mặc định của nó giá trị (rõ ràng hoặc ngầm). Ví dụ , nếu bạn chỉ định danh sách cột không đặt tên tất cả các cột trong bảng, cột chưa đặt tên được đặt thành giá trị mặc định của chúng. Phân bổ giá trị mặc định được mô tả trong Phần 10.1.4, “Kiểu dữ liệu Giá trị mặc định”. Xem thêm Phần 1.8.6.2, “Các ràng buộc trên Dữ liệu không hợp lệ”.
[..]
Sử dụng từ khóa DEFAULT để thiết lập một cột một cách rõ ràng để giá trị mặc định của nó . Điều này giúp dễ dàng viết các câu lệnh INSERT gán giá trị cho tất cả trừ một vài cột, vì nó cho phép bạn tránh viết danh sách GIÁ TRỊ không hoàn chỉnh không bao gồm giá trị cho mỗi cột trong bảng. Nếu không, bạn sẽ phải viết ra danh sách các tên cột tương ứng với từng giá trị trong danh sách GIÁ TRỊ.
[..]
Nếu cả hai danh sách cột và danh sách VALUES không trống rỗng, INSERT tạo liên tiếp với mỗi cột thiết lập để giá trị mặc định của nó:
INSERT INTO tbl_name() VALUES();
[..]
Trong chế độ nghiêm ngặt , một lỗi xảy ra nếu bất kỳ cột nào không có giá trị mặc định là . Nếu không, MySQL sẽ sử dụng giá trị mặc định ngầm cho bất kỳ cột nào không có mặc định được xác định rõ ràng.
'INSERT INTO table_name DEFAULT' không hoạt động trong MySQL. Sử dụng 'INSERT INTO table_name VALUES()' để thay thế. – izogfif
'HIỂN THỊ VARIABLES LIKE 'sql_mode';' cho 'STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION', vì vậy tôi tin rằng đó là chế độ SQL Strict. Khi l thực thi truy vấn 'INSERT INTO table_name DEFAULT;' nó đưa ra lỗi 'Lỗi SQL (1064): Bạn có một lỗi trong cú pháp SQL của bạn; kiểm tra hướng dẫn tương ứng với phiên bản máy chủ MySQL của bạn cho cú pháp đúng để sử dụng gần 'DEFAULT' ở dòng 1'. Tôi đã chỉ ra rằng bạn đã đưa ra hai lựa chọn thay thế và cái đầu tiên không hoạt động trong trường hợp MySQL. – izogfif
@izogfif: Điều đó có vẻ chính xác, cảm ơn –
- 1. Giá trị mặc định cho một trường nếu không có giá trị mặc định nào được cung cấp?
- 2. Làm cách nào để nhóm các hàng mysql có cùng giá trị cột thành một hàng?
- 3. Chèn vào bảng với một giá trị mặc định cột
- 4. hoàn nguyên hàng về giá trị cột mặc định mysql
- 5. Trong T-SQL, làm cách nào để chèn một hàng mới với tất cả các giá trị được đặt theo mặc định?
- 6. Làm thế nào để chèn các giá trị mặc định trong bảng SQL?
- 7. Có cách nào để có điều kiện sử dụng giá trị cột mặc định trong câu lệnh INSERT..SELECT không?
- 8. Chèn cùng một giá trị cố định vào nhiều hàng
- 9. Làm cách nào để thêm giá trị mặc định vào cột đã có?
- 10. Làm thế nào để có được giá trị của autoincrement của hàng cuối cùng tại chèn
- 11. Rails 4: ActiveRecord không lưu bất kỳ thuộc tính nào, lưu các giá trị mặc định
- 12. Làm cách nào để đặt giá trị mặc định thành chuỗi trống cho cột TEXT?
- 13. Làm cách nào để cập nhật cột trong tất cả các hàng của bảng dựa trên giá trị trong các cột khác (cho cùng một hàng)?
- 14. Có bất kỳ giá trị mặc định nào cho thanh ghi không?
- 15. Làm cách nào để đặt giá trị mặc định cho tất cả các khóa của đối tượng dict trong python?
- 16. Thêm cột vào bảng có giá trị mặc định bằng giá trị của cột hiện tại
- 17. Có cách nào để chỉ định giá trị thuộc tính mặc định trong Spring XML không?
- 18. Làm cách nào để thay đổi giá trị mặc định của cột trong PostgreSQL?
- 19. Làm thế nào để nhận được giá trị từ đối tượng, với giá trị mặc định
- 20. Làm thế nào để tổng hợp tất cả các giá trị của một cột trong một data.frame?
- 21. Chèn nhiều hàng các giá trị mặc định vào một bảng
- 22. SQL - Chèn nhiều giá trị hàng vào một cột đơn
- 23. Kiểm tra xem một giá trị có bằng bất kỳ giá trị nào trong một mảng
- 24. Làm cách nào để gán một cột mặc định trong MySQL cho giá trị của một cột khác?
- 25. Làm cách nào để liệt kê tất cả các thuộc tính trong đối tượng và nhận giá trị của chúng?
- 26. reset một hình thức để các giá trị mặc định
- 27. Làm thế nào để chèn một giá trị NULL
- 28. hàng tập hợp con với tất cả/bất kỳ cột lớn hơn một giá trị cụ thể
- 29. Bất kỳ cách nào để đưa các giá trị vào các tệp Ít trong Meteor?
- 30. Biểu thức LINQ để đặt tất cả các giá trị của một mảng thành một giá trị đã cho
Đây thực sự là câu trả lời đúng cho MySQL. –
Làm việc với mariadb - 10.0.31-MariaDB – MarcoZen