Mysql
如何將帶有二進制鍵的 MySQL 錶鍊接到 Access 中?
在 MS Access 中,我通過 ODBC 創建了一個連結表到一個帶有二進制(16)主鍵列(UUID)的 MySQL 表。MS Access 僅顯示第一行,所有其他行都有#deleted 條目。我猜這是二進製欄位的原因。我檢查了 ODBC 驅動程序屬性但沒有成功。你有解決這個問題的辦法嗎?
**詳細資訊:**我正在使用 Access 2010 64 位和“MySQL ODBC 5.2a 驅動程序”。打開連結表如下所示:
MySQL 表具有以下定義(簡化):
+---------------+---------------+------+-----+------------------+-------+ | Field | Type | Null | Key | Default | Extra | +---------------+---------------+------+-----+------------------+-------+ | LNEr | binary(16) | NO | PRI | | | | Datum | datetime | YES | | NULL | | | StatNr | int(11) | YES | | NULL | |
MS Access 生成以下定義:
我通過為表創建一個可更新的 VIEW解決了這個問題。視圖顯示每一列,但使用HEX()函式將主鍵
LNEr
轉換為字元串:CREATE VIEW v_ereignisse AS SELECT HEX(LNEr) AS LNEr, Datum, StatNr, ...
在 MS Access 中,我沒有創建指向表的連結,而是創建了指向視圖的連結。因為視圖沒有主鍵,“錶鍊接管理器”要求選擇一個,這(當然)是
LNEr
.