Trang 2 / 3 FirstFirst 123 LastLast
Hiển thị kết quả từ 11 đến 20 / 25
  1. #11
    Tham gia
    19-09-2002
    Location
    Liège, Belgium
    Bài viết
    273
    Like
    0
    Thanked 0 Times in 0 Posts
    Bạn lttnttn,

    Chắc bạn muốn nói là làm sao tạo Relation giữa table T1 nằm trên disque và table T2 nằm trong RAM ?
    Chắc chắn là không được. Bạn phải tạo table T2 trên physical support như disque thì mới thao tác Relation ship được.

    Table T2 bạn có thể tạo bằng Query nhưng ít bảo đảm bằng thao tác thẳng trên cửa sổ Access. Tạo xong T2 trên disque rồi, bạn mới có thể làm Query (câu lệnh thứ hai) và dùng Relation.

    Khác nhau giữa Query và Macro là Query chỉ thực hiện một câu lệnh SQL, mà Macro có thể thực hiện nhiều câu. Vậy bạn có thể thực hiện hai câu lệnh SQL (tạo table T2, và Query với Relation) bằng một macro.

    Nhưng mà tại sao vậy ? Bạn không có quyền Admin để tạo table từ trong cửa sổ Access à ? Vậy thì dù bạn có làm bao nhiêu Query nó cũng sẽ đòi privilege mà bạn không có,cho nên cũng sẽ báo lỗi mà thôi. Bạn cần phải nói rõ thì các bạn ở đây mới giúp được.
    OK?
    Thân

  2. #12
    Tham gia
    27-04-2003
    Location
    Tp HCM
    Bài viết
    12
    Like
    0
    Thanked 0 Times in 0 Posts
    Mình có bảng Khách hàng gồm các field(makh(khoá chính), tenkh, diachikh....)và bảng Hoá đơn( mahd, makh(khoá ngoại), ngayxuathd.., 2 bảng này quan hệ với nhau là (một nhiều thông qua filed makh).Nhưng khồ nổi là field makh trong bảng Khách hàng admin không có quyền nhập vô mà nó phải sinh tự động.Vậy phải làm sao?

  3. #13
    Tham gia
    19-09-2002
    Location
    Liège, Belgium
    Bài viết
    273
    Like
    0
    Thanked 0 Times in 0 Posts
    Quote Được gửi bởi lttnttn
    Mình có bảng Khách hàng gồm các field(makh(khoá chính), tenkh, diachikh....)và bảng Hoá đơn( mahd, makh(khoá ngoại), ngayxuathd.., 2 bảng này quan hệ với nhau là (một nhiều thông qua filed makh).Nhưng khồ nổi là field makh trong bảng Khách hàng admin không có quyền nhập vô mà nó phải sinh tự động.Vậy phải làm sao?
    Chào lttnttn,
    Hôm nay server bận nên trả lời trễ, mong lttnttn thông cảm.
    Mình thấy là khi dùng Access, chọn Autonumber, mình sẽ có một column tên là " No " và type là Autonumber. Và mình có thử xoá tên N° gõ lại makh, và thấy OK.
    Vậy, mình đề nghị lttnttn hãy làm như sau đây :
    1) Mở Access, tab Table, mở table khachhang ra, sữa column “N° “ ra thành “makh”, bên trái có sẵn hình chià khoá (vì nó là PK), nếu không thì click icône chìa khoá để tạo khoá.
    2) Table hoadon không có gì thay đổi , lưu ý là makh phải là type numeric, nó mới tương đương được với type Autonumber.
    3) Menu To ol/ Relation : cửa sổ mới Relation hiện ra. Click right : Ad d hai table đó vào. Xong dung chuột, bấm vào hang makh của table này kéo qua makh của table kia. Bạn sẽ thấy hiện ra cửa sổ nhỏ : bạn thấy bên trái field khachhang.makh, và bên phải là hoadon.makh, đánh dấu Referential integrity, 1-n. Xong Save.
    4) Bây giờ, bạn có thể dung tab Query, tạo Query mới : bạn thấy cửa sổ hiện ra, Ad d hai table vào, bạn thấy ngay cái relation hiện ra giữa hai table.
    5) Click icone ( ! ) là chạy liền.
    OK ?
    Thân,

  4. #14
    Tham gia
    27-04-2003
    Location
    Tp HCM
    Bài viết
    12
    Like
    0
    Thanked 0 Times in 0 Posts
    Nhưng field makh không phải tăng tự động từ 1, 2, 3...... mà là phải lấy năm hiện tại + tháng hiện tại và số thứ tự ứng với lúc nhập makh đó.(vd Người khách A hôm nay đăng ký vào mang số thứ tự là 15 thì makh là: 20030715.)

  5. #15
    Tham gia
    19-09-2002
    Location
    Liège, Belgium
    Bài viết
    273
    Like
    0
    Thanked 0 Times in 0 Posts
    Bạn lttnttn,
    Vậy thì trong Access, bạn sửa nó lại, thay vì type Autonumber, bạn chọn type Date. Với type này, bạn có nhiều dạng để hiển thị. Còn không thích thì sửa lại type text (8). Muốn sữa lại thì click vào bên phải chữ Autonumber, nó sẽ cho hiện ra một list mà chọn. Nếu chọn text, xem bên dưới, chọn chiều dài là 8.
    OK?
    Thân

  6. #16
    Tham gia
    27-04-2003
    Location
    Tp HCM
    Bài viết
    12
    Like
    0
    Thanked 0 Times in 0 Posts
    nhưng mà 20030715 là 2003 lấy năm hiện tại + 07 là tháng hiện tại +15 là số Autonumber. Mà trong bảng thì không thể nào chọn hai kiểu dữ liệu cùng một lúc được.Cái này thì chỉ làm được trong query thôi. Nhưng query thì mình không biết làm cách nào để chọn nó làm khoá chính.Phài làm sao đây, mong được giúp đỡ

  7. #17
    Tham gia
    19-09-2002
    Location
    Liège, Belgium
    Bài viết
    273
    Like
    0
    Thanked 0 Times in 0 Posts
    Có hai trường hợp :
    1) Có một chương-trình nạp dữ liệu, trong chương-trình đó, trường ngày đã được chọn, đó là hàm date() nếu là Visual Basic, và dùng format ngắn.
    2) Trong Access, mở cái table hoadon ra, trên trường mhd, đã chọn xong type date rồi, bên dưới chọn format (ngắn), ngoài ra Default value, bạn click vào bên phải (dấu ...), nó cho ra một cửa sổ. Bạn chọn function, thấy Date thì nhấp chuột vào: sẽ thấy hiện ra Date().
    Điều này cho phép bất kỳ ai nhập dữ liệu vào, sẽ có ngày đúng như ngày họ nhập (tức ngày hôm nay).
    Có thể là vậy thôi, chứ còn làm Query thì chỉ còn cách dùng Query cho database non-relational thôi, thí dụ :
    "select hoadon.mhd, hoadon.mkh, hoadon.ngayxuathd, khachhang.mkh, khachhang.tenkh, khachhang.diachikh from hoadon, khachhang
    where khachhang.mkh = hoadon.mkh;"
    Bạn hãy thử xem ? Cách này không cần khóa primary key, hay foreign key.
    Thân

  8. #18
    Tham gia
    19-09-2002
    Location
    Liège, Belgium
    Bài viết
    273
    Like
    0
    Thanked 0 Times in 0 Posts
    À quên nữa, bạn phải Insert, thì dùng :
    Insert vào table khachhang trước, nó được xem như table chính, nếu một khách hàng quen thuộc thì đã có rồi, khỏi nhập.
    Sau đó Insert vào table hoadon, cột mhd thì để tự nó chọn, nhớ ghi lại ngày hoadon.
    Dù database nào chăng nữa, mình không thể dùng Query để Insert một lúc hai table. Trong trương hợp này, table khachhang là primary.
    Thân

  9. #19
    Tham gia
    27-04-2003
    Location
    Tp HCM
    Bài viết
    12
    Like
    0
    Thanked 0 Times in 0 Posts
    thì ngày tháng nó có thể tự động rồi đó, nhưng còn số 15 nữa thì sao?, mà số 15 nào là phải là autonumber mới được, nếu người kế tiếp nhập vào thỉ nó sẽ trở thành 16, 17, 18 .....

  10. #20
    Tham gia
    19-09-2002
    Location
    Liège, Belgium
    Bài viết
    273
    Like
    0
    Thanked 0 Times in 0 Posts
    Cái này thì phải dùng khóa kép :
    Khóa kép gồm 2 trường : trường một là type Date, trường hai là type Autonumber.
    Xong để tạo khóa kép gồm hai trường đó, bạn dùng CTRL+chuột nhấp vào đầu trường một và trường hai (bạn sẽ thấy hai trường được select), xong click cái chìa khóa.
    Xin lỗi bạn, bây giờ đọc lại kỹ các bài mới hiểu ý bạn.
    Chúc thành công.
    Thân

Trang 2 / 3 FirstFirst 123 LastLast

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •