Ứng dụng mã nguồn NukeViet

https://mynukeviet.net


Lưu ý đặt tên trường khi thiết kế cơ sỡ dữ liệu NukeViet 4

Dưới đây là các lưu ý khi đặt tên trường của bảng dữ liệu trong NukeViet 4.
Ở NukeViet 3, vấn đề này không được chú ý bởi NukeViet 3 chỉ kết nối với 1 hệ CSDL duy nhất là MySQL. Mặc định tên trường MySQL đều được đăt giữa cặp dấu nháy đơn " ` ` " nên trường dữ liệu được hiểu như là một chuỗi, không trùng với các khóa trong MySQL.

NukeViet 4 dùng PDO để kết nối với đa hệ CSDL, một số hệ CSDL không cần thiết có dấu nháy đơn ở tên trường, nên việc hệ thống báo tên trường trùng với các khóa của hệ CSDL là có thể xảy ra, một số trường hợp sẽ báo lỗi.

Tránh trường hợp đó, NukeViet quy định các tên trường (trong danh sách bên dưới không nên sử dụng trong khi đặt tên trường của bảng dữ liệu):
 
add, all, alter, analyze, and, as, asc, before, between, bigint, binary, both, by, call, cascade, case, change, char, character, check, collate, column, comment, condition, constraint, continue, convert, create, cross, current_user, cursor, database, databases, date, day_hour, day_minute, day_second, dec, decimal, declare, default, delayed, delete, desc, describe, distinct, distinctrow, drop, dual, else, elseif, enclosed, escaped, exists, exit, explain, false, fetch, file, float4, float8, for, force, foreign, from, fulltext, get, grant, group, having, high_priority, hour_minute, hour_second, identified, if, ignore, ignore_server_ids, in, index, infile, inner, insert, int1, int2, int3, int4, int8, integer, interval, into, is, iterate, join, key, keys, kill, leading, leave, left, level, like, limit, lines, load, lock, long, loop, low_priority, master_bind, master_heartbeat_period, master_ssl_verify_server_cert, match, middleint, minute_second, mod, mode, modify, natural, no_write_to_binlog, not, null, number, numeric, on, optimize, option, optionally, or, order, outer, outfile, partition, precision, primary, privileges, procedure, public, purge, read, real, references, release, rename, repeat, replace, require, resignal, restrict, return, revoke, right, rlike, rows, schema, schemas, select, separator, session, set, share, show, signal, spatial, sql_after_gtids, sql_before_gtids, sql_big_result, sql_calc_found_rows, sql_small_result, sqlstate, ssl, start, starting, straight_join, table, terminated, then, to, trailing, trigger, true, undo, union, unique, unlock, unsigned, update, usage, use, user, using, values, varcharacter, varying, view, when, where, while, with, write, year_month, zerofill
Xem tại includes/field_not_allow.php