Create Unique Key Column in db_schema.xml file Magento 2.

Unique Key column in the database table used to avoid the duplication of data in the same column.

Using a unique column key, Table gives guarantees to unique value for the column from the set of records in a table.

First, we create a simple db_schema.xml file to create a table,

<?xml version="1.0"?>
<schema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="urn:magento:framework:Setup/Declaration/Schema/etc/schema.xsd">
    <table name="customer_records" resource="default" engine="innodb" comment="Catalogrule Label">
        <column xsi:type="int" name="entity_id" padding="10" unsigned="true" nullable="false" identity="true"
                comment="Id"/>
        <column xsi:type="varchar" name="coupon_code" nullable="false" length="255" comment="Coupon code"/>
        <column xsi:type="smallint" name="store_id" padding="5" unsigned="true" nullable="false" identity="false"
                comment="Store Id"/>
        <constraint xsi:type="unique" referenceId="CUSTOMER_RECORDS_COUPON_CODE_STORE_ID">
            <column name="coupon_code"/>
            <column name="store_id"/>
        </constraint>
    </table>
</schema>

You can add a unique key for the column using constraint xsi:type=“unique” in an XML file.

In Customer_records table, We have defined two columns as unique,
1. coupon_code
2. store_id

You need to pass the below syntax,

<constraint xsi:type="unique" referenceId="CUSTOMER_RECORDS_COUPONCODE_STORE_ID">
    <column name="coupon_code"/>
    <column name="store_id"/>
</constraint>

Add your unique column under <column /> node to create unique column.

You can add one or multiple unique key columns inside the table.