535 lines
14 KiB
Plaintext
535 lines
14 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 1,
|
|
"id": "5263a987-da36-46d7-a2e7-d0658cda09c1",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"import DBcm"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 2,
|
|
"id": "3f6b0763-4106-4bfa-9aef-7afbd180c6d4",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"db_name = \"movie_db.db\"\n",
|
|
"\n",
|
|
"create_my_list = \"\"\"\n",
|
|
" create table if not exists movie_list (\n",
|
|
" id integer not null primary key autoincrement,\n",
|
|
" titel varchar(64) not null,\n",
|
|
" genre_id integer not null,\n",
|
|
" regie_id integer not null\n",
|
|
" \n",
|
|
" )\n",
|
|
"\n",
|
|
"\"\"\"\n",
|
|
"\n",
|
|
"create_genre = \"\"\"\n",
|
|
" create table if not exists genre (\n",
|
|
" id integer not null primary key autoincrement,\n",
|
|
" name varchar(64) not null\n",
|
|
" )\n",
|
|
"\"\"\"\n",
|
|
"\n",
|
|
"create_regie = \"\"\"\n",
|
|
" create table if not exists regie (\n",
|
|
" id integer not null primary key autoincrement,\n",
|
|
" surname varchar(64) not null,\n",
|
|
" lastname varchr(64) not null\n",
|
|
" )\n",
|
|
"\"\"\"\n",
|
|
"\n",
|
|
"\n",
|
|
"with DBcm.UseDatabase(db_name) as db: \n",
|
|
" db.execute(create_my_list)\n",
|
|
" db.execute(create_genre)\n",
|
|
" db.execute(create_regie)\n",
|
|
" "
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 3,
|
|
"id": "376ef812-97b5-45ba-8ef1-eb8d7829494a",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"# ADDed Genre values\n",
|
|
"\n",
|
|
"ADD_GENRE_VALUE = \"\"\"\n",
|
|
" INSERT INTO genre(name)\n",
|
|
" SELECT ?\n",
|
|
" WHERE NOT EXISTS (SELECT 1 FROM genre WHERE name = ?);\n",
|
|
" \"\"\"\n",
|
|
"\n",
|
|
"with open(\"genre_list\", \"r\") as fs: \n",
|
|
" for genre_value in fs.readlines():\n",
|
|
" with DBcm.UseDatabase(db_name) as db:\n",
|
|
" db.execute(ADD_GENRE_VALUE, (genre_value.strip(), genre_value.strip()))\n",
|
|
" "
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 27,
|
|
"id": "63b16a41-88bf-4832-a26c-09180832f597",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"['action', 'adventure', 'animation', 'biography', 'comedy', 'crime', 'cult movie', 'disney', 'documentary', 'drama', 'erotic', 'family', 'fantasy', 'film-noir', 'gangster', 'gay and lesbian', 'history', 'horror', 'military', 'music', 'musical', 'mystery', 'nature', 'neo-noir', 'period', 'pixar', 'road movie', 'romance', 'sci-fi', 'short', 'spy', 'super hero', 'thriller', 'visually stunning', 'war', 'western']\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"def all_genres():\n",
|
|
" ALL_GENRE = \"\"\"\n",
|
|
" SELECT * from genre \n",
|
|
" \"\"\" \n",
|
|
" with DBcm.UseDatabase(db_name) as db:\n",
|
|
" db.execute(ALL_GENRE)\n",
|
|
" all_genre = [i[1] for i in db.fetchall()]\n",
|
|
" \n",
|
|
" return all_genre\n",
|
|
"\n",
|
|
"print(all_genres())\n",
|
|
" "
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 36,
|
|
"id": "89b20b5f-34aa-4490-a4c0-c186c9fa30bd",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"1\n",
|
|
"36\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"def search_genre_id(genre_name):\n",
|
|
" GENRE_QUERY = \"\"\"\n",
|
|
" select id from genre\n",
|
|
" where name = ?\n",
|
|
" \"\"\"\n",
|
|
" try:\n",
|
|
" with DBcm.UseDatabase(db_name) as db:\n",
|
|
" db.execute(GENRE_QUERY,(genre_name,))\n",
|
|
" genre_id = db.fetchone()[0]\n",
|
|
" return int(genre_id)\n",
|
|
" except:\n",
|
|
" return int(0)\n",
|
|
"\n",
|
|
"\n",
|
|
"def search_medium_id(genre_name):\n",
|
|
" GENRE_QUERY = \"\"\"\n",
|
|
" select id from genre\n",
|
|
" where medium = ?\n",
|
|
" \"\"\"\n",
|
|
" try:\n",
|
|
" with DBcm.UseDatabase(db_name) as db:\n",
|
|
" db.execute(GENRE_QUERY,(genre_name,))\n",
|
|
" genre_id = db.fetchone()[0]\n",
|
|
" return int(genre_id)\n",
|
|
" except:\n",
|
|
" return int(0)\n",
|
|
"\n",
|
|
"print(search_genre_id(genre_name=\"action\"))\n",
|
|
"print(search_genre_id(genre_name=\"western\"))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 18,
|
|
"id": "c70d91a5-7855-465d-a4a6-daebc065ee37",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"0-John-Smith\n",
|
|
"1-James-Johnson\n",
|
|
"2-William-Williams\n",
|
|
"3-Michael-Brown\n",
|
|
"4-David-Davis\n",
|
|
"5-Richard-Miller\n",
|
|
"6-Joseph-Wilson\n",
|
|
"7-Charles-Moore\n",
|
|
"8-Thomas-Taylor\n",
|
|
"9-Daniel-Anderson\n",
|
|
"10-Paul-Thomas\n",
|
|
"11-Mark-Jackson\n",
|
|
"12-Donna-White\n",
|
|
"13-Michelle-Harris\n",
|
|
"14-Laura-Martin\n",
|
|
"15-Sara-Thompson\n",
|
|
"16-Ana-Garcia\n",
|
|
"17-Carlos-Rodriguez\n",
|
|
"18-Maria-Martinez\n",
|
|
"19-Jose-Hernandez\n",
|
|
"20-Luis-Lopez\n",
|
|
"21-Rosa-Gonzalez\n",
|
|
"22-Pedro-Perez\n",
|
|
"23-Miguel-Sanchez\n",
|
|
"24-Juan-Ramirez\n",
|
|
"25-Ana-Flores\n",
|
|
"26-Isabella-Cruz\n",
|
|
"27-Victor-Rivera\n",
|
|
"28-Kevin-Lee\n",
|
|
"29-Brian-Walker\n",
|
|
"30-Emily-Hall\n",
|
|
"31-Ryan-Allen\n",
|
|
"32-Aaron-Young\n",
|
|
"33-Jeffrey-King\n",
|
|
"34-Joshua-Wright\n",
|
|
"35-Brandon-Scott\n",
|
|
"36-Frank-Turner\n",
|
|
"37-Gregory-Carter\n",
|
|
"38-Samuel-Phillips\n",
|
|
"39-Chris-Evans\n",
|
|
"40-Anthony-Collins\n",
|
|
"41-Eric-Stewart\n",
|
|
"42-Frank-Snyder\n",
|
|
"43-Thomas-Baker\n",
|
|
"44-Jeremy-Nelson\n",
|
|
"45-Steven-Roberts\n",
|
|
"46-Edward-Campbell\n",
|
|
"47-Ryan-Miller\n",
|
|
"48-Jacob-Davis\n",
|
|
"49-David-Garcia\n",
|
|
"50-Sophia-Rodriguez\n",
|
|
"51-Emma-Martinez\n",
|
|
"52-Noah-Hernandez\n",
|
|
"53-Ava-Lopez\n",
|
|
"54-Ethan-Gonzalez\n",
|
|
"55-Mia-Perez\n",
|
|
"56-William-Sanchez\n",
|
|
"57-James-Ramirez\n",
|
|
"58-Olivia-Flores\n",
|
|
"59-Lucas-Cruz\n",
|
|
"60-Isabella-Rivera\n",
|
|
"61-David-Lee\n",
|
|
"62-Sophie-Walker\n",
|
|
"63-Matthew-Hall\n",
|
|
"64-Emma-Allen\n",
|
|
"65-Ryan-Young\n",
|
|
"66-Ava-King\n",
|
|
"67-Ethan-Wright\n",
|
|
"68-Mia-Scott\n",
|
|
"69-William-Turner\n",
|
|
"70-James-Carter\n",
|
|
"71-Olivia-Phillips\n",
|
|
"72-Lucas-Evans\n",
|
|
"73-Sophie-Collins\n",
|
|
"74-Noah-Stewart\n",
|
|
"75-Ava-Snyder\n",
|
|
"76-Ethan-Baker\n",
|
|
"77-Mia-Nelson\n",
|
|
"78-Noah-Roberts\n",
|
|
"79-Emma-Campbell\n",
|
|
"80-William-Miller\n",
|
|
"81-James-Davis\n",
|
|
"82-Olivia-Garcia\n",
|
|
"83-Lucas-Rodriguez\n",
|
|
"84-Sophie-Martinez\n",
|
|
"85-Noah-Hernandez\n",
|
|
"86-Ava-Lopez\n",
|
|
"87-Ethan-Gonzalez\n",
|
|
"88-Mia-Perez\n",
|
|
"89-William-Sanchez\n",
|
|
"90-James-Ramirez\n",
|
|
"91-Olivia-Flores\n",
|
|
"92-Lucas-Cruz\n",
|
|
"93-Isabella-Rivera\n",
|
|
"94-David-Lee\n",
|
|
"95-Sophie-Walker\n",
|
|
"96-Matthew-Hall\n",
|
|
"97-Emma-Allen\n",
|
|
"98-Ryan-Young\n",
|
|
"99-Ava-King\n",
|
|
"100-Ethan-Wright\n",
|
|
"101-Mia-Scott\n",
|
|
"102-William-Turner\n",
|
|
"103-James-Carter\n",
|
|
"104-Olivia-Phillips\n",
|
|
"105-Lucas-Evans\n",
|
|
"106-Sophie-Collins\n",
|
|
"107-Noah-Stewart\n",
|
|
"108-Ava-Snyder\n",
|
|
"109-Ethan-Baker\n",
|
|
"110-Mia-Nelson\n",
|
|
"111-Noah-Roberts\n",
|
|
"112-Emma-Campbell\n",
|
|
"113-William-Miller\n",
|
|
"114-James-Davis\n",
|
|
"115-Olivia-Garcia\n",
|
|
"116-Lucas-Rodriguez\n",
|
|
"117-Sophie-Martinez\n",
|
|
"118-Noah-Hernandez\n",
|
|
"119-Ava-Lopez\n",
|
|
"120-Ethan-Gonzalez\n",
|
|
"121-Mia-Perez\n",
|
|
"122-William-Sanchez\n",
|
|
"123-James-Ramirez\n",
|
|
"124-Olivia-Flores\n",
|
|
"125-Lucas-Cruz\n",
|
|
"126-Isabella-Rivera\n",
|
|
"127-David-Lee\n",
|
|
"128-Sophie-Walker\n",
|
|
"129-Matthew-Hall\n",
|
|
"130-Emma-Allen\n",
|
|
"131-Ryan-Young\n",
|
|
"132-Ava-King\n",
|
|
"133-Ethan-Wright\n",
|
|
"134-Mia-Scott\n",
|
|
"135-William-Turner\n",
|
|
"136-James-Carter\n",
|
|
"137-Olivia-Phillips\n",
|
|
"138-Lucas-Evans\n",
|
|
"139-Sophie-Collins\n",
|
|
"140-Noah-Stewart\n",
|
|
"141-Ava-Snyder\n",
|
|
"142-Ethan-Baker\n",
|
|
"143-Mia-Nelson\n",
|
|
"144-Noah-Roberts\n",
|
|
"145-Emma-Campbell\n",
|
|
"146-William-Miller\n",
|
|
"147-James-Davis\n",
|
|
"148-Olivia-Garcia\n",
|
|
"149-Lucas-Rodriguez\n",
|
|
"150-Sophie-Martinez\n",
|
|
"151-Noah-Hernandez\n",
|
|
"152-Ava-Lopez\n",
|
|
"153-Ethan-Gonzalez\n",
|
|
"154-Mia-Perez\n",
|
|
"155-William-Sanchez\n",
|
|
"156-James-Ramirez\n",
|
|
"157-Olivia-Flores\n",
|
|
"158-Lucas-Cruz\n",
|
|
"159-Isabella-Rivera\n",
|
|
"160-David-Lee\n",
|
|
"161-Sophie-Walker\n",
|
|
"162-Matthew-Hall\n",
|
|
"163-Emma-Allen\n",
|
|
"164-Ryan-Young\n",
|
|
"165-Ava-King\n",
|
|
"166-Ethan-Wright\n",
|
|
"167-Mia-Scott\n",
|
|
"168-William-Turner\n",
|
|
"169-James-Carter\n",
|
|
"170-Olivia-Phillips\n",
|
|
"171-Lucas-Evans\n",
|
|
"172-Sophie-Collins\n",
|
|
"173-Noah-Stewart\n",
|
|
"174-Ava-Snyder\n",
|
|
"175-Ethan-Baker\n",
|
|
"176-Mia-Nelson\n",
|
|
"177-Noah-Roberts\n",
|
|
"178-Emma-Campbell\n",
|
|
"179-William-Miller\n",
|
|
"180-James-Davis\n",
|
|
"181-Olivia-Garcia\n",
|
|
"182-Lucas-Rodriguez\n",
|
|
"183-Sophie-Martinez\n",
|
|
"184-Noah-Hernandez\n",
|
|
"185-Ava-Lopez\n",
|
|
"186-Ethan-Gonzalez\n",
|
|
"187-Mia-Perez\n",
|
|
"188-William-Sanchez\n",
|
|
"189-James-Ramirez\n",
|
|
"190-Olivia-Flores\n",
|
|
"191-Lucas-Cruz\n",
|
|
"192-Isabella-Rivera\n",
|
|
"193-David-Lee\n",
|
|
"194-Sophie-Walker\n",
|
|
"195-Matthew-Hall\n",
|
|
"196-Emma-Allen\n",
|
|
"197-Ryan-Young\n",
|
|
"198-Ava-King\n",
|
|
"199-Ethan-Wright\n",
|
|
"200-Mia-Scott\n",
|
|
"201-William-Turner\n",
|
|
"202-James-Carter\n",
|
|
"203-Olivia-Phillips\n",
|
|
"204-Lucas-Evans\n",
|
|
"205-Sophie-Collins\n",
|
|
"206-Noah-Stewart\n",
|
|
"207-Ava-Snyder\n",
|
|
"208-Ethan-Baker\n",
|
|
"209-Mia-Nelson\n",
|
|
"210-Noah-Roberts\n",
|
|
"211-Emma-Campbell\n",
|
|
"212-William-Miller\n",
|
|
"213-James-Davis\n",
|
|
"214-Olivia-Garcia\n",
|
|
"215-Lucas-Rodriguez\n",
|
|
"216-Sophie-Martinez\n",
|
|
"217-Noah-Hernandez\n",
|
|
"218-Ava-Lopez\n",
|
|
"219-Ethan-Gonzalez\n",
|
|
"220-Mia-Perez\n",
|
|
"221-William-Sanchez\n",
|
|
"222-James-Ramirez\n",
|
|
"223-Olivia-Flores\n",
|
|
"224-Lucas-Cruz\n",
|
|
"225-Isabella-Rivera\n",
|
|
"226-David-Lee\n",
|
|
"227-Sophie-Walker\n",
|
|
"228-Matthew-Hall\n",
|
|
"229-Emma-Allen\n",
|
|
"230-Ryan-Young\n",
|
|
"231-Ava-King\n",
|
|
"232-Ethan-Wright\n",
|
|
"233-Mia-Scott\n",
|
|
"234-William-Turner\n",
|
|
"235-James-Carter\n",
|
|
"236-Olivia-Phillips\n",
|
|
"237-Lucas-Evans\n",
|
|
"238-Sophie-Collins\n",
|
|
"239-Noah-Stewart\n",
|
|
"240-Ava-Snyder\n",
|
|
"241-Ethan-Baker\n",
|
|
"242-Mia-Nelson\n",
|
|
"243-Noah-Roberts\n",
|
|
"244-Emma-Campbell\n",
|
|
"245-William-Miller\n",
|
|
"246-James-Davis\n",
|
|
"247-Olivia-Garcia\n",
|
|
"248-Lucas-Rodriguez\n",
|
|
"249-Sophie-Martinez\n",
|
|
"250-Noah-Hernandez\n",
|
|
"251-Ava-Lopez\n",
|
|
"252-Ethan-Gonzalez\n",
|
|
"253-Mia-Perez\n",
|
|
"254-William-Sanchez\n",
|
|
"255-James-Ramirez\n",
|
|
"256-Olivia-Flores\n",
|
|
"257-Lucas-Cruz\n",
|
|
"258-Isabella-Rivera\n",
|
|
"259-David-Lee\n",
|
|
"260-Sophie-Walker\n",
|
|
"261-Matthew-Hall\n",
|
|
"262-Emma-Allen\n",
|
|
"263-Ryan-Young\n",
|
|
"264-Ava-King\n",
|
|
"265-Ethan-Wright\n",
|
|
"266-Mia-Scott\n",
|
|
"267-William-Turner\n",
|
|
"268-James-Carter\n",
|
|
"269-Olivia-Phillips\n",
|
|
"270-Lucas-Evans\n",
|
|
"271-Sophie-Collins\n",
|
|
"272-Noah-Stewart\n",
|
|
"273-Ava-Snyder\n",
|
|
"274-Ethan-Baker\n",
|
|
"275-Mia-Nelson\n",
|
|
"276-Noah-Roberts\n",
|
|
"277-Emma-Campbell\n",
|
|
"278-William-Miller\n",
|
|
"279-James-Davis\n",
|
|
"280-Olivia-Garcia\n",
|
|
"281-Lucas-Rodriguez\n",
|
|
"282-Sophie-Martinez\n",
|
|
"283-Noah-Hernandez\n",
|
|
"284-Ava-Lopez\n",
|
|
"285-Ethan-Gonzalez\n",
|
|
"286-Mia-Perez\n",
|
|
"287-William-Sanchez\n",
|
|
"288-James-Ramirez\n",
|
|
"289-Olivia-Flores\n",
|
|
"290-Lucas-Cruz\n",
|
|
"291-Isabella-Rivera\n",
|
|
"292-David-Lee\n",
|
|
"293-Sophie-Walker\n",
|
|
"294-Matthew-Hall\n",
|
|
"295-Emma-Allen\n",
|
|
"296-Ryan-Young\n",
|
|
"297-Ava-King\n",
|
|
"298-Ethan-Wright\n",
|
|
"299-Mia-Scott\n",
|
|
"300-William-Turner\n",
|
|
"301-James-Carter\n",
|
|
"302-Olivia-Phillips\n",
|
|
"303-Lucas-Evans\n",
|
|
"304-Sophie-Collins\n",
|
|
"305-Noah-Stewart\n",
|
|
"306-Ava-Snyder\n",
|
|
"307-Ethan-Baker\n",
|
|
"308-Mia-Nelson\n",
|
|
"309-Noah-Roberts\n",
|
|
"310-Emma-Campbell\n",
|
|
"311-William-Miller\n",
|
|
"312-James-Davis\n",
|
|
"313-Olivia-Garcia\n",
|
|
"314-Lucas-Rodriguez\n",
|
|
"315-Sophie-Martinez\n",
|
|
"316-Noah-Hernandez\n",
|
|
"317-Ava-Lopez\n",
|
|
"318-Ethan-Gonzalez\n",
|
|
"319-Mia-Perez\n",
|
|
"320-William-Sanchez\n",
|
|
"321-James-Ramirez\n",
|
|
"322-Olivia-Flores\n",
|
|
"323-Lucas-Cruz\n",
|
|
"324-Isabella-Rivera\n",
|
|
"325-David-Lee\n",
|
|
"326-Sophie-Walker\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"import pandas as pd\n",
|
|
"usecols = [\"Name\", \"Vorname\"]\n",
|
|
"air = pd.read_csv(\"regie_name.csv\", usecols=usecols)\n",
|
|
"\n",
|
|
"for count, (i, b) in enumerate(zip(air[\"Name\"], air[\"Vorname\"])):\n",
|
|
" print(count, b, i, sep=\"-\")\n",
|
|
"\n"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "ee4b5dee-6b41-49eb-8d75-9db50d20fdef",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": []
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Python 3 (ipykernel)",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 3
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython3",
|
|
"version": "3.13.3"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 5
|
|
}
|