Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cơ sở dữ liệu mặc định của MySQL

Đây là cách đặt cơ sở dữ liệu mặc định cho tất cả các truy vấn tiếp theo.

MySQL cho phép bạn đặt một cơ sở dữ liệu mặc định được sử dụng làm bối cảnh cho bất kỳ câu lệnh SQL nào tiếp theo. Có thể có nhiều cơ sở dữ liệu trên máy chủ và MySQL cần biết cơ sở dữ liệu nào bạn muốn chạy bất kỳ / s câu lệnh SQL nào. Đặt cơ sở dữ liệu mặc định là một khởi đầu tốt vì nó giúp bạn không phải chỉ định cơ sở dữ liệu trong truy vấn.

Bạn có thể thay đổi DB mặc định thường xuyên nếu bạn muốn. Nó không nhất thiết phải là một thứ "đặt và quên". Tùy thuộc vào số lượng cơ sở dữ liệu bạn đang làm việc, bạn có thể chuyển đổi DB mặc định khá thường xuyên.

Bạn có thể đặt cơ sở dữ liệu mặc định theo chương trình hoặc thông qua giao diện đồ họa.

Sử dụng MySQL Workbench GUI

Nhấp chuột phải vào tên cơ sở dữ liệu trong SCHEMAS tab (trong menu bên trái):

Cơ sở dữ liệu mặc định bây giờ sẽ được liệt kê bằng in đậm kiểu chữ:

Có lập trình

USE câu lệnh yêu cầu MySQL sử dụng một cơ sở dữ liệu cụ thể làm cơ sở dữ liệu mặc định khi bạn chạy các câu lệnh SQL tiếp theo.

USE FruitShop;

Giờ đây, mọi truy vấn tiếp theo sẽ được chạy trên FruitShop DB. Như thế này:

USE FruitShop;
SELECT * FROM Fruit;

CREATE DATABASE Tập lệnh

USE tuyên bố thực sự có thể hữu ích trong các tập lệnh tạo cơ sở dữ liệu của chúng tôi. Khi chúng tôi đã tạo cơ sở dữ liệu của mình, chúng tôi có thể đặt nó làm cơ sở dữ liệu mặc định bằng cách chỉ định USE tuyên bố chống lại nó.

Làm điều này sẽ đảm bảo rằng bất kỳ câu lệnh SQL nào tiếp theo sẽ sử dụng cơ sở dữ liệu mới được tạo của chúng tôi làm DB hiện tại (trừ khi được chỉ định khác trong tập lệnh). Điều này rất quan trọng vì nó cho MySQL biết DB nào để tạo các bảng dựa trên:

DROP DATABASE IF EXISTS FruitShop;
CREATE DATABASE FruitShop;
USE FruitShop;
CREATE TABLE table_1 (...);
CREATE TABLE table_2 (...);

Chuyển đổi cơ sở dữ liệu mặc định

Không có gì có thể ngăn bạn chuyển đổi cơ sở dữ liệu mặc định nhiều lần trong các tập lệnh của mình. Vì vậy, nếu bạn có hai cơ sở dữ liệu, bạn có thể làm như sau:

USE FruitShop;
SELECT * FROM Fruit;

USE VegeShop;
SELECT * FROM Vegetables;

Truy vấn trên chọn tất cả các bản ghi từ Fruit trong FruitShop cơ sở dữ liệu và tất cả các bản ghi từ Rau trong VegeShop cơ sở dữ liệu. Không có USE , MySQL sẽ không biết cơ sở dữ liệu nào để truy vấn cho mỗi câu lệnh.

Tất nhiên, đây là một ví dụ đơn giản hóa. Thường thì bạn sẽ thấy mình thực hiện các truy vấn phức tạp hơn đối với cơ sở dữ liệu của mình và kỹ thuật này thực sự có thể hữu ích.

Đủ điều kiện cho Tên DB trong Tuyên bố

Bất kể bạn có đặt cơ sở dữ liệu mặc định hay không, bạn cũng có thể chỉ định cơ sở dữ liệu bên trong tuyên bố.

Để thực hiện việc này, hãy sử dụng cú pháp sau:database.table.column

Đây là một ví dụ:

SELECT FruitName, VegeName FROM FruitShop.Fruit, VegeShop.Vegetables
WHERE FruitShop.Fruit.SupplierId = VegeShop.Vegetables.SupplierId ;

Ghi đè DB Mặc định - Chỉ định Cơ sở dữ liệu trong một Truy vấn

Đặt cơ sở dữ liệu mặc định không ngăn cản bạn truy vấn các cơ sở dữ liệu khác. Ngay cả sau khi bạn đã đặt cơ sở dữ liệu mặc định, bạn vẫn có thể truy vấn các cơ sở dữ liệu khác mà không cần phải đặt chúng làm cơ sở dữ liệu mặc định. Bạn vẫn có thể chỉ định cơ sở dữ liệu nào sẽ sử dụng trong các truy vấn của mình. Trên thực tế, bạn có thể sử dụng nhiều cơ sở dữ liệu trong một truy vấn duy nhất bằng phương pháp này.

Vì vậy, ví dụ trên cũng có thể được viết như sau:

USE FruitShop;
SELECT FruitName, VegeName FROM Fruit, VegeShop.Vegetables
WHERE Fruit.SupplierId = VegeShop.Vegetables.SupplierId ;

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Các lựa chọn thay thế MySQL Workbench - Quản lý cấu hình ClusterControl

  2. phpMyAdmin bị lỗi # 2002 không thể đăng nhập vào máy chủ mysql phpmyadmin

  3. MySQL:làm thế nào để có được sự khác biệt giữa hai dấu thời gian trong vài giây

  4. Thông tin về cơ sở dữ liệu information_schema trong MySQL

  5. Khóa ngoại MySQL