데이터 베이스 MySQL 튜토리얼 MySQL数据库技术(19)_MySQL

MySQL数据库技术(19)_MySQL

Jun 02, 2016 am 08:49 AM
영향

  3.9 MySQL 不支持的功能

    本节介绍其他数据库中有而MySQL 中无的功能。它介绍省略了什么功能,以及在需要这些功能时怎么办。一般情况下, MySQL 之所以忽略某些功能是因为它们有负面性能影响。有的功能正在开发者的计划清单上,一旦找到一种方法可以实现相应的功能而又不致于影响良好性能的目标,就会对它们进行实现。

    ■ 子选择。子选择是嵌套在另一个SELECT 语句内的SELECT 语句,如下面的查询所示:

    SELECT * FROM score
    WHERE event_id IN (SELECT event_id FROM event WHERE type = "T")

    子选择打算在MySQL 3.24 中给出,到那时它们就不会忽略了。但到那时,许多用子选择撰写的查询也可以用连接来编写。请参阅3 . 8 . 1节“将子选择编写为连接”。

    ■ 事务处理和提交/回退。事务处理是由其他客户机作为一个整体不中断执行的一组S Q L语句。提交/回退功能允许规定数条语句作为一个整体执行或不执行。即,如果事务处理中的任何一条语句失败,那么直到该语句前执行的所有语句的作用都被撤消。
ySQL 自动进行单一SQL 语句的同步以免客户机互相干扰。(例如,两个客户机不能对相同的表进行同时写入。)此外,可利用LOCK TABLES 和UNLOCK TA B L ES将数条语句组成一个整体,这使您能够完成单条语句的并发控制所不能满足的操作。MySQL 与事务处理有关的问题是,它不能自动对数条语句进行组织,而且如果这些语句中有某一条失败后也不能对它们进行回退。

    为了弄清事务处理为什么有用,可举例说明。假如您在服装销售业工作,无论何时,只要您的销售人员进行了一次销售,都要更新库存数目。下面的例子说明了在多个销售人员同时更新数据库时可能出现的问题(假如初始的衬衫库存数目为4 7):

    t1 销售人员1卖出3件衬衫

    t2 销售人员检索当前衬衫计数( 4 7):

    SELECT quantity FROM inventory WHERE item = "shirt"

    t3 销售人员2卖出2件衬衫

    t4 销售人员2检索当前衬衫计数( 4 7)

    SELECT quantity FROM inventory WHERE item = "shirt"

    t5 销售人员1计算库存的新数目为47 - 3 = 44 并设置衬衫计数为44:

    UPDATE inventory SET quantity = 44 WHERE item = "shirt"

    t6 销售人员2计算库存的新数目为47 - 2 = 45 并设置衬衫计数为45:

    UPDATE inventory SET quantity = 45 WHERE item = "shirt"

    在这个事件序列结束时,您已经卖掉了5 件衬衫,但库存数目却是45 而不是4 2。问题是如果在一条语句中查看库存而在另一条语句中更新其值,这是一个多语句的事务处理。第二条语句中所进行的活动取决于第一条语句中检索出的值。但是如果在重叠的时间范围内出现独立的事务处理,则每个事务处理的语句会纠缠在一起,并且互相干扰。在事务处理型的数据库中,每个销售人员的语句可作为一个事务处理执行,这样,销售人员2 的语句在销售人员1 的语句完成之前不会被执行。在MySQL 中,可用两种方法达到这个目的:

    ■ 方法1:作为一个整体执行一组语句。可利用LOCK TABLES 和UNLOCK TABLES将语句组织在一起,并将它们作为一个原子单元执行:锁住所需使用的表,发布查询,然后释放这些锁。这样阻止了其他人在您锁住这些表时使用它们。利用表同步,库存情况如下所示:

    t1 销售人员1卖出3件衬衫

    t2 销售人员1请求一个锁并检索当前衬衫计数(47)

    LOCK TABLES inventory WRITE

    SELECT quantity FROM inventory WHERE item = "shirt"

    t3 销售人员2卖出2件衬衫

    t4 销售人员2试图取得一个锁:这被阻塞,因为销售人员1 已经占住了锁:

    LOCK TABLES inventory WRITE

    t5 销售人员1计算库存的新数目为47 - 3 = 44 并设置衬衫计数为44,然后释放锁:

    UPDATE inventory SET quantity = 44 WHERE item = "shirt"

    UNLOCK TABLES

    t6 现在销售人员2的锁请求成功。销售人员2检索当前衬衫计数( 44)

    SELECT quantity FROM inventory WHERE item = "shirt"

    t7 销售人员2计算库存的新数目为44 - 2 = 42,设置衬衫计数为4 2,然后释放锁:

    UPDATE inventory SET quantity = 42 WHERE item = "shirt"

    UNLOCK TABLES

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

VBOX_E_OBJECT_NOT_FOUND(0x80bb0001)VirtualBox 오류 VBOX_E_OBJECT_NOT_FOUND(0x80bb0001)VirtualBox 오류 Mar 24, 2024 am 09:51 AM

VirtualBox에서 디스크 이미지를 열려고 하면 하드 드라이브를 등록할 수 없다는 오류가 발생할 수 있습니다. 이는 일반적으로 열려고 하는 VM 디스크 이미지 파일이 다른 가상 디스크 이미지 파일과 동일한 UUID를 가질 때 발생합니다. 이 경우 VirtualBox는 오류 코드 VBOX_E_OBJECT_NOT_FOUND(0x80bb0001)를 표시합니다. 이 오류가 발생하더라도 걱정하지 마세요. 시도해 볼 수 있는 몇 가지 해결 방법이 있습니다. 먼저 VirtualBox의 명령줄 도구를 사용하여 디스크 이미지 파일의 UUID를 변경하면 충돌을 피할 수 있습니다. 'VBoxManageinternal' 명령을 실행할 수 있습니다.

비행기 모드를 사용하여 전화를 받는 것이 얼마나 효과적인가요? 비행기 모드를 사용하여 전화를 받는 것이 얼마나 효과적인가요? Feb 20, 2024 am 10:07 AM

비행기 모드로 전화를 걸면 어떻게 될까요? 휴대폰은 사람들의 삶에 없어서는 안될 도구 중 하나가 되었습니다. 휴대폰은 의사소통 도구일 뿐만 아니라 오락, 학습, 업무 및 기타 기능의 집합체이기도 합니다. 휴대폰 기능의 지속적인 업그레이드와 개선으로 인해 사람들은 휴대폰에 대한 의존도가 점점 더 높아지고 있습니다. 비행기 모드의 등장으로 사람들은 비행 중에 휴대폰을 더욱 편리하게 사용할 수 있게 되었습니다. 하지만 비행기 모드에서 다른 사람의 통화가 휴대폰이나 사용자에게 어떤 영향을 미칠지 걱정하시는 분들도 계시죠? 이 글에서는 여러 측면에서 분석하고 논의할 것이다. 첫 번째

TikTok에서 댓글 기능을 끄는 방법은 무엇입니까? TikTok에서 댓글 기능을 끄면 어떻게 되나요? TikTok에서 댓글 기능을 끄는 방법은 무엇입니까? TikTok에서 댓글 기능을 끄면 어떻게 되나요? Mar 23, 2024 pm 06:20 PM

Douyin 플랫폼에서 사용자는 인생의 순간을 공유할 수 있을 뿐만 아니라 다른 사용자와 상호 작용할 수도 있습니다. 때로는 댓글 기능이 온라인 폭력, 악성 댓글 등 불쾌한 경험을 유발할 수 있습니다. 그렇다면 TikTok의 댓글 기능을 끄는 방법은 무엇입니까? 1. Douyin의 댓글 기능을 끄는 방법은 무엇입니까? 1. Douyin APP에 로그인하고 개인 홈페이지에 들어가세요. 2. 오른쪽 하단의 "I"를 클릭하여 설정 메뉴로 들어갑니다. 3. 설정 메뉴에서 "개인정보 설정"을 찾으세요. 4. "개인정보 설정"을 클릭하여 개인정보 설정 인터페이스로 들어갑니다. 5. 개인정보 설정 인터페이스에서 "댓글 설정"을 찾으세요. 6. "댓글 설정"을 클릭하여 댓글 설정 인터페이스로 들어갑니다. 7. 댓글 설정 인터페이스에서 '댓글 닫기' 옵션을 찾으세요. 8. "댓글 닫기" 옵션을 클릭하여 댓글 닫기를 확인하세요.

Java의 파일 포함 취약점과 그 영향 Java의 파일 포함 취약점과 그 영향 Aug 08, 2023 am 10:30 AM

Java는 다양한 애플리케이션을 개발하는 데 일반적으로 사용되는 프로그래밍 언어입니다. 그러나 다른 프로그래밍 언어와 마찬가지로 Java에도 보안 취약점과 위험이 있습니다. 일반적인 취약점 중 하나는 파일 포함 취약점(FileInclusionVulnerability)입니다. 이 문서에서는 이 취약점의 원리, 영향 및 방지 방법을 살펴봅니다. 파일 인클루젼 취약점은 프로그램 내에서 다른 파일을 동적으로 도입하거나 포함시키지만, 도입된 파일이 완전히 검증 및 보호되지 않는 취약점을 말합니다.

데이터 부족이 모델 학습에 미치는 영향 데이터 부족이 모델 학습에 미치는 영향 Oct 08, 2023 pm 06:17 PM

데이터 부족이 모델 학습에 미치는 영향에는 특정 코드 예제가 필요합니다. 기계 학습 및 인공 지능 분야에서 데이터는 모델 학습의 핵심 요소 중 하나입니다. 그러나 현실에서 우리가 자주 직면하는 문제는 데이터의 부족입니다. 데이터 희소성은 훈련 데이터의 양이 부족하거나 주석이 달린 데이터가 부족한 것을 의미합니다. 이 경우 모델 훈련에 일정한 영향을 미칩니다. 데이터 부족 문제는 주로 다음과 같은 측면에서 나타납니다. 과적합(Overfitting): 훈련 데이터의 양이 부족하면 모델이 과적합되기 쉽습니다. 과적합은 모델이 훈련 데이터에 과도하게 적응하는 것을 말합니다.

하드 드라이브의 불량 섹터로 인해 어떤 문제가 발생합니까? 하드 드라이브의 불량 섹터로 인해 어떤 문제가 발생합니까? Feb 18, 2024 am 10:07 AM

하드디스크의 배드섹터(Bad Sector)란 하드디스크의 물리적인 고장, 즉 하드디스크의 저장장치가 정상적으로 데이터를 읽거나 쓸 수 없는 상태를 의미합니다. 불량 섹터가 하드 드라이브에 미치는 영향은 매우 크며 데이터 손실, 시스템 충돌 및 하드 드라이브 성능 저하로 이어질 수 있습니다. 이 기사에서는 하드 드라이브 불량 섹터의 영향과 관련 솔루션을 자세히 소개합니다. 첫째, 하드 드라이브의 불량 섹터로 인해 데이터가 손실될 수 있습니다. 하드 디스크의 섹터에 불량 섹터가 있으면 해당 섹터의 데이터를 읽을 수 없어 파일이 손상되거나 액세스할 수 없게 됩니다. 불량 섹터가 위치한 섹터에 중요한 파일이 저장되어 있는 경우 이러한 상황은 특히 심각합니다.

광산 카드가 게임에 구체적으로 어떤 영향을 미치나요? 광산 카드가 게임에 구체적으로 어떤 영향을 미치나요? Jan 03, 2024 am 09:05 AM

일부 사용자는 저렴함을 위해 마이닝 카드 구매를 고려할 수도 있습니다. 그러나 일부 게이머는 마이닝 카드가 게임 플레이에 미치는 영향을 걱정합니다. . 마이닝 카드를 사용하여 게임을 할 때의 효과는 무엇입니까? 1. 마이닝 카드의 수명이 매우 짧고 그냥 플레이한 후에는 쓸모가 없게 될 가능성이 높기 때문에 마이닝 카드를 사용한 게임 플레이의 안정성은 보장할 수 없습니다. 2. 마이닝 카드는 기본적으로 원본 버전의 거세 버전이므로 장기간 마모로 인해 모든 측면에서 성능이 약할 수 있습니다. 3. 이와 같은 방법으로 이용자는 게임 플레이 시 게임의 효과를 모두 표현하지 못할 수도 있습니다. 4. 게다가 그래픽 카드의 전자 부품은 미리 노후화되며, 게임을 하는 것도 그래픽 카드를 소모하기 때문에 소모되는 정도가 크기 때문에 게임에 미치는 영향이 큽니다. 5. 일반적으로 게임을 할 때는 마이닝 카드를 사용합니다.

낮은 그래픽 카드 구성은 어떤 영향을 미치나요? 낮은 그래픽 카드 구성은 어떤 영향을 미치나요? Feb 15, 2024 pm 03:27 PM

컴퓨터의 실행 품질은 기본적으로 그래픽 카드에 큰 영향을 미칩니다. 일부 사용자는 그래픽 카드에 대해 잘 모르고 그래픽 카드가 컴퓨터의 어떤 측면에 영향을 미치는지 정확히 알지 못합니다. 낮은 그래픽 카드 구성에 따른 몇 가지 효과를 소개하겠습니다. 낮은 그래픽 카드 구성의 영향은 무엇입니까? 답변: 1. 일부 대규모 3D 게임은 실행할 수 없습니다. 2. 일부 고화질 비디오를 재생할 때 컴퓨터는 큰 압박을 받게 됩니다. 3. 좀 더 전문적인 소프트웨어의 경우 도면 및 3D 모델 렌더링이 필요할 때 제대로 실행할 방법이 없습니다. 4. 그래픽 카드 구성이 낮으면 게임을 열 수 없거나 자주 충돌하고 정지되며 컴퓨터 화면도 흐려지거나 블루 스크린이 나타납니다. 5. 게임에서 가장 중요한 것은 그래픽 카드입니다. 많은 사진이 필요하기 때문입니다.

See all articles