#
# Testing indexing
#
CREATE TABLE t1
(
matricule INT(4) KEY NOT NULL field_format='Z',
nom VARCHAR(16) NOT NULL,
prenom VARCHAR(20) NOT NULL,
sexe SMALLINT(1) NOT NULL COMMENT 'sexe 1:M 2:F',
aanais INT(4) NOT NULL,
mmnais INT(2) NOT NULL,
ddentree DATE NOT NULL date_format='YYYYMM',
ddnom DATE NOT NULL date_format='YYYYMM',
brut INT(5) NOT NULL,
net DOUBLE(8,2) NOT NULL,
service INT(2) NOT NULL,
sitmat CHAR(1) NOT NULL,
formation CHAR(5) NOT NULL,
INDEX NP(nom,prenom)
) ENGINE=CONNECT CHARSET=latin1 TABLE_TYPE=FIX FILE_NAME='emp.txt' ENDING=2;
SELECT * FROM t1 LIMIT 10;
matricule nom prenom sexe aanais mmnais ddentree ddnom brut net service sitmat formation 5745 ESCOURCHE BENEDICTE 2193571962-12-011994-05-011834514275.500 M TECHN 9692 VICENTE LAURENCE 2194181967-10-011989-01-011621213032.800 M ANGL 9146 NICOLAS ROGER 1194161964-07-011995-02-013417325098.650 M SANS 2985 TESSEREAU MARIE HELENE 2194191967-01-011990-01-011932314933.780 V SANS 3368 MOGADOR ALAIN 1194111961-09-011993-11-014330331420.550 C SANS 7394 CHAUSSEE ERIC DENIS 1194491965-11-011983-12-013200223583.860 M ANGL 4655 MAILLOT GEORGES 1194551970-09-011986-12-012470018541.640 C ANGL 2825 CAMILLE NADINE 2195691994-01-011993-01-011949415050.450 M SANS 1460 BRUYERES JEAN MARC 1195881984-08-011988-05-012090215980.070 M SANS 4974 LONES GERARD 11959101979-01-011994-12-011608112916.700 M SANS
SELECT SUM(brut) from t1;
SUM(brut) 64319029
#
# Testing file mapping
#
ALTER TABLE t1 MAPPED=yes;
SELECT * FROM t1 LIMIT 10;
matricule nom prenom sexe aanais mmnais ddentree ddnom brut net service sitmat formation 5745 ESCOURCHE BENEDICTE 2193571962-12-011994-05-011834514275.500 M TECHN 9692 VICENTE LAURENCE 2194181967-10-011989-01-011621213032.800 M ANGL 9146 NICOLAS ROGER 1194161964-07-011995-02-013417325098.650 M SANS 2985 TESSEREAU MARIE HELENE 2194191967-01-011990-01-011932314933.780 V SANS 3368 MOGADOR ALAIN 1194111961-09-011993-11-014330331420.550 C SANS 7394 CHAUSSEE ERIC DENIS 1194491965-11-011983-12-013200223583.860 M ANGL 4655 MAILLOT GEORGES 1194551970-09-011986-12-012470018541.640 C ANGL 2825 CAMILLE NADINE 2195691994-01-011993-01-011949415050.450 M SANS 1460 BRUYERES JEAN MARC 1195881984-08-011988-05-012090215980.070 M SANS 4974 LONES GERARD 11959101979-01-011994-12-011608112916.700 M SANS
SELECT SUM(brut) FROM t1;
SUM(brut) 64319029
#
# Test the indexes (made when creating the table)
#
SELECT * FROM t1 WHERE matricule = '0091';
matricule nom prenom sexe aanais mmnais ddentree ddnom brut net service sitmat formation 91 THIVERNAL DIDIER JEAN 11951101980-05-011991-10-011471512024.711 M SANS
SELECT * FROM t1 WHERE nom = 'FOCH';
matricule nom prenom sexe aanais mmnais ddentree ddnom brut net service sitmat formation 1977 FOCH BERNADETTE 2195831992-02-011991-02-0186568145.031 . SANS 5707 FOCH DENIS 1197771996-07-011995-07-0178037679.3615 C COMPT 2552 FOCH FRANCK 11962121986-06-011990-11-011288210745.8113 M SANS 2634 FOCH JOCELYNE 2195331996-01-011995-01-011249910473.0941 M INFOR 5765 FOCH ROBERT 1195711981-03-011993-03-011608112916.3252 M ALLEM 4080 FOCH SERGE 1195931981-03-011981-05-01111319658.245 M SANS
SELECT * FROM t1 WHERE nom = 'FOCH'and prenom = 'DENIS';
matricule nom prenom sexe aanais mmnais ddentree ddnom brut net service sitmat formation 5707 FOCH DENIS 1197771996-07-011995-07-0178037679.3615 C COMPT
#
# Testing UPDATE
#
UPDATE t1 SET aanais = aanais + 16;
UPDATE t1 SET ddentree = adddate(ddentree, interval 16 year);
UPDATE t1 SET ddnom = adddate(ddnom, interval 16 year);
SELECT * FROM t1 WHERE nom = 'FOCH';
matricule nom prenom sexe aanais mmnais ddentree ddnom brut net service sitmat formation 1977 FOCH BERNADETTE 2197432008-02-012007-02-0186568145.031 . SANS 5707 FOCH DENIS 1199372012-07-012011-07-0178037679.3615 C COMPT 2552 FOCH FRANCK 11978122002-06-012006-11-011288210745.8113 M SANS 2634 FOCH JOCELYNE 2196932012-01-012011-01-011249910473.0941 M INFOR 5765 FOCH ROBERT 1197311997-03-012009-03-011608112916.3252 M ALLEM 4080 FOCH SERGE 1197531997-03-011997-05-01111319658.245 M SANS
#
# Testing JOIN
#
create table t2
(
sexe INT(1) KEY,
genre CHAR(8) NOT NULL
) ENGINE=CONNECT CHARSET=latin1 TABLE_TYPE=CSV FILE_NAME='sexe.csv' SEP_CHAR=';' ENDING=2;
SELECT * FROM t2;
sexe genre 0 Inconnu 1 Masculin 2 Feminin
# t2 has only 3 rows. Force eq_ref by increasing table scan cost! set @@optimizer_scan_setup_cost=10000;
explain SELECT nom, prenom, genre FROM t1 NATURAL JOIN t2 order by nom,prenom LIMIT 10;
id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 4545 Using filesort 1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t1.sexe 1 Using where
SELECT nom, prenom, genre FROM t1 NATURAL JOIN t2 order by nom,prenom LIMIT 10;
nom prenom genre
ABBADIE MONIQUE Feminin
ABBAYE ANNICK Feminin
ABBAYE GERALD Masculin
ABBE KATIA Feminin
ABBE MICHELE Feminin
ABBE SOPHIE Feminin
ABBEVILLE PASCAL Masculin
ABEBERRY PATRICK Masculin
ABEILLES RENE Masculin
ABEL JEAN PIERRE Masculin set @@optimizer_scan_setup_cost=default;
#
# Another table
#
CREATE TABLE t3 (
sitmat CHAR(1) KEY,
situation CHAR(12) NOT NULL
) ENGINE=CONNECT CHARSET=latin1 TABLE_TYPE=CSV FILE_NAME='sitmat.csv' SEP_CHAR=';' ENDING=2;
SELECT * FROM t3;
sitmat situation
. Inconnu
C Celibataire
D Divorce
L Union libre
M Marie
S Separe
V Veuf
SELECT nom, prenom, genre, situation FROM t1 NATURAL JOIN t2 NATURAL JOIN t3 WHERE nom = 'FOCH';
nom prenom genre situation
FOCH BERNADETTE Feminin Inconnu
FOCH DENIS Masculin Celibataire
FOCH FRANCK Masculin Marie
FOCH JOCELYNE Feminin Marie
FOCH ROBERT Masculin Marie
FOCH SERGE Masculin Marie
#
# Testing DELETE
#
DELETE FROM t1;
DROP TABLE t1;
DROP TABLE t2;
DROP TABLE t3;
#
# MDEV-28299: Server crashes in
# XINDXS::Range/CntIndexRange (Connect engine)
#
CREATE TABLE t1 ( a int not null, KEY (a))engine=CONNECT;
Warnings:
Warning 1105 No table_type. Will be set to DOS
Warning 1105 No file name. Table will use t1.dos
SELECT * FROM t1 WHERE a=1;
a
INSERT INTO t1 values (1),(2),(1);
SELECT * FROM t1 WHERE a=1;
a 1 1
DROP TABLE t1;
CREATE TABLE t1 (a int, b int, pk int, PRIMARY KEY (pk)) engine=CONNECT;
Warnings:
Warning 1105 No table_type. Will be set to DOS
Warning 1105 No file name. Table will use t1.dos
SELECT x.a
FROM t1 AS x JOIN t1 AS y ON (x.a = y.b)
WHERE x.pk > 3;
a
INSERT INTO t1 values (1,2,1),(2,1,2),(1,2,3),(3,4,4);
SELECT x.a
FROM t1 AS x JOIN t1 AS y ON (x.a = y.b)
WHERE x.pk > 3;
a
INSERT INTO t1 values (1,2,5);
SELECT x.a
FROM t1 AS x JOIN t1 AS y ON (x.a = y.b)
WHERE x.pk > 3;
a 1
DROP TABLE t1;
#
# MDEV-27591 Connect tables (FIX/DOS) don't work with DESC keys - wrong results
#
CREATE TABLE t1 (
id INT,
f VARCHAR(32),
PRIMARY KEY (id DESC)
) ENGINE=CONNECT CHARSET=latin1 TABLE_TYPE=DOS FILE_NAME='emp.txt'; ERROR HY000: Descending indexes are not supported
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-10-08)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.