Legjobb válasz
A elsődleges kulcs egy különleges kényszer egy oszlopra vagy oszlopkészletre. Az elsődleges kulcs korlátozása biztosítja, hogy az így kijelölt oszlop (ok) ne rendelkezzenek NULL értékekkel, és hogy minden érték egyedi legyen. Fizikailag az elsődleges kulcsot az adatbázis-rendszer egyedi index segítségével valósítja meg, és az elsődleges kulcs összes oszlopát NULL-nak kell nyilvánítani. Egy táblának csak egy elsődleges kulcsa lehet, de lehet összetett (egynél több oszlopból állhat).
A helyettesítő kulcs bármely oszlop vagy oszlopkészlet, amely deklarálható elsődleges kulcsként egy “igazi” vagy természetes helyett kulcs . Előfordul, hogy több természetes kulcs is deklarálható elsődleges kulcsként, és ezeket mind jelöltkulcsoknak hívják. Tehát a helyettesítő kulcs kulcs. Egy táblának tulajdonképpen egynél több helyettesítő kulcsa lehet, bár ez szokatlan lenne. A helyettesítő kulcs leggyakoribb típusa egy növekményes egész, például egy automatikus\_növekedés oszlop a MySQL-ben, vagy egy sorozat az Oracle-ben, vagy egy identitás oszlop az SQL Server-ben.
A helyettesítő kulcsok előnyei
Mint említettük, egy helyettesítő kulcs feláldozza az adatok eredeti kontextusának egy részét. Rendkívül hasznos lehet azonban analitikai célokra a következő okokból:
- A helyettesítő kulcsok egyediek. Mivel a helyettesítő kulcsok rendszer által generált, lehetetlen, hogy a rendszer duplikált értéket hozzon létre és tároljon.
- A helyettesítő kulcsok minden rekordra egységes szabályokat alkalmaznak. A helyettesítő kulcs egy program eredménye, amely létrehozza a rendszer által létrehozott értéket. Bármely program eredményeként létrehozott kulcs minden egyes rekordra egységes szabályokat alkalmaz.
- A helyettesítő kulcsok kiállják az idő próbáját. Mivel a helyettesítő a kulcsok nem tartalmaznak kontextust vagy üzleti jelentést, a jövőben nem lesz szükség a kulcs megváltoztatására.
- A helyettesítő kulcsok korlátlan értékeket tesznek lehetővé. A szekvenciális, az időbélyegző és a véletlenszerű kulcsoknak nincs gyakorlati korlátja az egyedi kombinációknak.
Válasz
A legtöbb adatbázis ma valóban adatbázis-kezelő rendszer (DBMS). Ezek két összetevőből állnak:
- az adatbázis right , amely az adatokat tárolja metaadatokkal együtt, például relációkkal, korlátozásokkal , stb …
- a felhasználói felület, ahová a fejlesztő és / vagy az adatbázis-rendszergazda SQL parancsokat ad meg.
Az adatbázisok többsége parancssori segédprogrammal szállítja az interfészt. az adatbázissal. Például a MySQL egy egyszerű SQL shell-t biztosít, bemeneti sor szerkesztési képességeivel. Támogatja az interaktív és nem interaktív felhasználást. Interaktív használat esetén a lekérdezés eredményei ASCII-tábla formátumban jelennek meg. Ha nem interaktív módon használják (például szűrőként), akkor az eredményt tabulátorral elválasztott formában jelenítik meg. A kimeneti formátum a parancsopciók használatával módosítható.
A MySQL parancsértelmező meghívásához a parancsértelmező parancsából a következőket kell beírnia:
shell> mysql --user=user\_name --password db\_name
Enter password: your\_password
Miután bejelentkezett az adatbázisába, parancsokat hajthat végre, például egy SELECT lekérdezést , ellene:
shell>SELECT * FROM shop ORDER BY article;
+---------+--------+-------+
| article | dealer | price |
+---------+--------+-------+
| 1 | A | 3.45 |
| 1 | B | 3.99 |
| 2 | A | 10.99 |
| 3 | B | 1.45 |
| 3 | C | 1.69 |
| 3 | D | 1.25 |
| 4 | D | 19.95 |
+---------+--------+-------+
Az SQL utasításokat fájlba is helyezheti, és majd mondja meg a mysql-nek, hogy olvassa el a bemenetét abból a fájlból. Ehhez létrehoz egy szöveges fájlt, amely tartalmazza a végrehajtani kívánt utasításokat. Ezután hívja meg a mysql-t az alábbiak szerint:
shell> mysql db\_name
Egyes adatbázis-gyártók GUI klienseket és segédprogramokat is kínálnak, a parancs- vonal kliens. A MySQL-lel együtt GUI kliense a MySQL Workbench. A Windows, Linux és Mac OS X rendszereken elérhető MySQL Workbench adatbázis-építészeknek, fejlesztőknek és DBA-knak szól. Adatmodellezést, SQL fejlesztést és átfogó adminisztrációs eszközöket nyújt a szerver konfigurálásához, a felhasználói adminisztrációhoz, a biztonsági mentéshez és még sok minden máshoz.
Egyéb eszközök
Az adatbázis-gyártók által kínált eszközök mellett számos más nyílt forráskódú és kereskedelmi ajánlat is elérhető az összes népszerű adatbázis típusok és felhőszolgáltatások. A különbségeket tekintve az ingyenes és a kereskedelmi termékek egyaránt megfelelnek a céljuknak.Az, hogy melyikkel megy, általában inkább a munkája típusának függvénye, mint a használhatóság.
Miután elég sokat dolgoztam mind a nyílt forráskódú, mind a kereskedelmi termékekkel, azt tapasztaltam, hogy fokozatosan vonzódtam a utóbbi, mivel a munka hatékonysága egyre fontosabbá vált az informatikai tanácsadói munkám szempontjából. Személyes véleményem az, hogy a kereskedelmi termékek hatékonyabbá tehetik Önt, mivel egyszerűsítik a közös feladatokat a hatékonyság növelése érdekében.
Ennek eredményeként a Navicat Premium programot használtam. adatbázis fejlesztés és admin kliens már több éve. Noha a Navicat minden népszerű adatbázis számára klienseket készít, a Navicat Premium az egyetlen olyan eszköz, amelyet használtam, amely egyszerre képes csatlakozni a MySQL, MariaDB, MongoDB, SQL Server, Oracle, PostgreSQL és SQLite adatbázisokhoz egyetlen alkalmazásból. Teljes mértékben kompatibilis az olyan felhőalapú adatbázisokkal is, mint az Amazon RDS, az Amazon Aurora, az Amazon Redshift, a Microsoft Azure, az Oracle Cloud és a Google Cloud.
Íme egy képernyőkép a Windows főképernyőjéről:
Minden Navicat termék elérhető Linux és macOS, valamint Windows rendszerekhez.
Különösen a Lekérdező szerkesztő segít az írásban a lekérdezéseim gyorsabbak a szintaxis kiemelés, az újrafelhasználható és testreszabható kódrészletek, valamint az automatikus javaslat segítségével, az alábbi képen:
Van még egy lekérdező készítője is, amely nagy előnyökkel jár a kevésbé tapasztalt felhasználók számára. Lehetővé teszi vizuális lekérdezések létrehozását és szerkesztését gyakorlatilag az SQL ismerete nélkül!
Remélem, hogy segít!
Üdvözlettel:
Ádám